Re: CREATE INDEX CONCURRENTLY does not index prepared xact's data
Sandeep Thakkar <sandeep.thakkar@enterprisedb.com>
From: Sandeep Thakkar <sandeep.thakkar@enterprisedb.com>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Andrey Borodin <x4mmm@yandex-team.ru>, Andres Freund <andres@anarazel.de>, Noah Misch <noah@leadboat.com>, CM Team <cm@enterprisedb.com>, PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>,
Michael Paquier <michael@paquier.xyz>, Tom Lane <tgl@sss.pgh.pa.us>, Peter Geoghegan <pg@bowt.ie>, Semab Tariq <semab.tariq@enterprisedb.com>
Date: 2021-11-02T00:50:42Z
Lists: pgsql-bugs
On Mon, Nov 1, 2021 at 7:47 PM Robert Haas <robertmhaas@gmail.com> wrote:
> On Mon, Nov 1, 2021 at 9:33 AM Sandeep Thakkar
> <sandeep.thakkar@enterprisedb.com> wrote:
> > (gdb) p tupdesc1->attrs[1]
> > No symbol "tupdesc1" in current context.
> > (gdb) p tupdesc1->attrs[2]
> > No symbol "tupdesc1" in current context.
> > (gdb) p tupdesc2->attrs[0]
> > No symbol "tupdesc2" in current context.
> > (gdb) p tupdesc2->attrs[1]
> > No symbol "tupdesc2" in current context.
> > (gdb)
>
> I think you need to select stack frame 1 before running these
> commands. I believe just running "frame 1" before you run these print
> commands should do the trick.
>
> Thanks Robert, that worked. Here is the output:
(gdb) frame 1
#1 0x40000000003fdc00:0 in equalTupleDescs (tupdesc1=0x60000000001f65e0,
tupdesc2=0x60000000001fba08)
(gdb) p tupdesc1->attrs[0]
$1 = {attrelid = 27272, attname = {
data = "initial", '\000' <repeats 56 times>}, atttypid = 23,
attstattarget = -1, attlen = 4, attnum = 1, attndims = 0, attcacheoff = 0,
atttypmod = -1, attbyval = true, attalign = 105 'i', attstorage = 112 'p',
attcompression = 0 '\000', attnotnull = false, atthasdef = false,
atthasmissing = false, attidentity = 0 '\000', attgenerated = 0 '\000',
attisdropped = false, attislocal = true, attinhcount = 0, attcollation =
0}
(gdb) p tupdesc1->attrs[1]
$2 = {attrelid = 27272, attname = {data = "a", '\000' <repeats 62 times>},
atttypid = 23, attstattarget = -1, attlen = 4, attnum = 2, attndims = 0,
attcacheoff = -1, atttypmod = -1, attbyval = true, attalign = 105 'i',
attstorage = 112 'p', attcompression = 0 '\000', attnotnull = false,
atthasdef = true, atthasmissing = true, attidentity = 0 '\000',
attgenerated = 0 '\000', attisdropped = false, attislocal = true,
attinhcount = 0, attcollation = 0}
(gdb) p tupdesc1->attrs[2]
$3 = {attrelid = 27272, attname = {data = "b", '\000' <repeats 62 times>},
atttypid = 19, attstattarget = -1, attlen = 64, attnum = 3, attndims = 0,
attcacheoff = -1, atttypmod = -1, attbyval = false, attalign = 99 'c',
attstorage = 112 'p', attcompression = 0 '\000', attnotnull = false,
atthasdef = false, atthasmissing = false, attidentity = 0 '\000',
attgenerated = 0 '\000', attisdropped = false, attislocal = true,
attinhcount = 0, attcollation = 950}
(gdb) p tupdesc2->attrs[0]
$4 = {attrelid = 27272, attname = {
data = "initial", '\000' <repeats 56 times>}, atttypid = 23,
attstattarget = -1, attlen = 4, attnum = 1, attndims = 0, attcacheoff = 0,
atttypmod = -1, attbyval = true, attalign = 105 'i', attstorage = 112 'p',
attcompression = 0 '\000', attnotnull = false, atthasdef = false,
atthasmissing = false, attidentity = 0 '\000', attgenerated = 0 '\000',
attisdropped = false, attislocal = true, attinhcount = 0, attcollation =
0}
(gdb) p tupdesc2->attrs[1]
$5 = {attrelid = 27272, attname = {data = "a", '\000' <repeats 62 times>},
atttypid = 23, attstattarget = -1, attlen = 4, attnum = 2, attndims = 0,
attcacheoff = -1, atttypmod = -1, attbyval = true, attalign = 105 'i',
attstorage = 112 'p', attcompression = 0 '\000', attnotnull = false,
atthasdef = true, atthasmissing = true, attidentity = 0 '\000',
attgenerated = 0 '\000', attisdropped = false, attislocal = true,
attinhcount = 0, attcollation = 0}
(gdb) p tupdesc2->attrs[2]
$6 = {attrelid = 27272, attname = {data = "b", '\000' <repeats 62 times>},
atttypid = 19, attstattarget = -1, attlen = 64, attnum = 3, attndims = 0,
attcacheoff = -1, atttypmod = -1, attbyval = false, attalign = 99 'c',
attstorage = 112 'p', attcompression = 0 '\000', attnotnull = false,
atthasdef = false, atthasmissing = false, attidentity = 0 '\000',
attgenerated = 0 '\000', attisdropped = false, attislocal = true,
attinhcount = 0, attcollation = 950}
> (gdb)
>
--
> Robert Haas
> EDB: http://www.enterprisedb.com
>
--
Sandeep Thakkar
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Improve contrib/amcheck's tests for CREATE INDEX CONCURRENTLY.
- b1f943d2aa7e 14.1 landed
- 7f580aa5d88a 15.0 landed
- 5a4b8a8a720c 13.5 landed
- 141cd0ef0b0b 12.9 landed
-
Fix minor memory leaks in pg_dump.
- 70bef494000e 15.0 cited
-
Avoid race in RelationBuildDesc() affecting CREATE INDEX CONCURRENTLY.
- e428699cb3be 9.6.24 landed
- db86746fd11e 10.19 landed
- 5141e471b36a 11.14 landed
- dde966efb286 14.1 landed
- 2e33b43599ad 13.5 landed
- 0869e53d3a07 12.9 landed
- fdd965d074d4 15.0 landed
-
Fix CREATE INDEX CONCURRENTLY for the newest prepared transactions.
- df6158139f64 11.14 landed
- 560124a37c2f 10.19 landed
- 5184932432b4 9.6.24 landed
- fe5d44a1d38f 12.9 landed
- a9d0a5409415 13.5 landed
- a5b9a0000e14 14.1 landed
- 3cd9c3b92197 15.0 landed
-
Add -w back to the flags for pg_ctl (re)start in PostgresNode
- b33259e261ae 15.0 cited
-
Fix CREATE INDEX CONCURRENTLY for simultaneous prepared transactions.
- 77a0e14f0b21 9.5.25 landed
- d683d6528dba 9.6.21 landed
- 179775135b41 10.16 landed
- d1ab4bf6ed2d 11.11 landed
- be843ce29737 12.6 landed
- 86a5b309c933 13.2 landed
- 8a54e12a38d1 14.0 landed