3
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
4
<title>41.19.�pg_largeobject</title>
5
<link rel="stylesheet" href="stylesheet.css" type="text/css">
6
<link rev="made" href="pgsql-docs@postgresql.org">
7
<meta name="generator" content="DocBook XSL Stylesheets V1.64.1">
8
<link rel="home" href="index.html" title="PostgreSQL 8.0.0beta5 Documentation">
9
<link rel="up" href="catalogs.html" title="Chapter�41.�System Catalogs">
10
<link rel="previous" href="catalog-pg-language.html" title="41.18.�pg_language">
11
<link rel="next" href="catalog-pg-listener.html" title="41.20.�pg_listener">
13
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="sect1" lang="en">
14
<div class="titlepage">
15
<div><div><h2 class="title" style="clear: both">
16
<a name="catalog-pg-largeobject"></a>41.19.�<tt class="structname">pg_largeobject</tt></h2></div></div>
19
<a name="id2726158"></a><p> The catalog <tt class="structname">pg_largeobject</tt> holds the data making up
20
“<span class="quote">large objects</span>”. A large object is identified by an
21
OID assigned when it is created. Each large object is broken into
22
segments or “<span class="quote">pages</span>” small enough to be conveniently stored as rows
23
in <tt class="structname">pg_largeobject</tt>.
24
The amount of data per page is defined to be <tt class="literal">LOBLKSIZE</tt> (which is currently
25
<tt class="literal">BLCKSZ/4</tt>, or typically 2 kB).
28
<a name="id2726202"></a><p class="title"><b>Table�41.19.�<tt class="structname">pg_largeobject</tt> Columns</b></p>
29
<table summary="pg_largeobject Columns" border="1">
44
<td><tt class="structfield">loid</tt></td>
45
<td><tt class="type">oid</tt></td>
47
<td>Identifier of the large object that includes this page</td>
50
<td><tt class="structfield">pageno</tt></td>
51
<td><tt class="type">int4</tt></td>
53
<td>Page number of this page within its large object
54
(counting from zero)</td>
57
<td><tt class="structfield">data</tt></td>
58
<td><tt class="type">bytea</tt></td>
60
<td> Actual data stored in the large object.
61
This will never be more than <tt class="symbol">LOBLKSIZE</tt> bytes and may be less.
67
<p> Each row of <tt class="structname">pg_largeobject</tt> holds data
68
for one page of a large object, beginning at
69
byte offset (<tt class="literal">pageno * LOBLKSIZE</tt>) within the object. The implementation
70
allows sparse storage: pages may be missing, and may be shorter than
71
<tt class="literal">LOBLKSIZE</tt> bytes even if they are not the last page of the object.
72
Missing regions within a large object read as zeroes.