Re: 64-bit API for large object
Kohei KaiGai <kaigai@kaigai.gr.jp>
From: Kohei KaiGai <kaigai@kaigai.gr.jp>
To: Tatsuo Ishii <ishii@postgresql.org>
Cc: tgl@sss.pgh.pa.us, pgsql-hackers@postgresql.org, anzai@sraoss.co.jp, nagata@sraoss.co.jp
Date: 2012-09-21T09:34:12Z
Lists: pgsql-hackers
2012/9/21 Tatsuo Ishii <ishii@postgresql.org>: >>> I think Tom's point is, there are tons of applications which define >>> their own "int64_t" (at least in 2005). >>> Also pg_config.h has: >>> >>> #define HAVE_STDINT_H 1 >>> >>> and this suggests that PostgreSQL adopts to platforms which does not >>> have stdint.h. If so, we need to take care of such platforms anyway. >>> >> OK, it makes me clear. It might be helpful a source code comment >> to remain why we used self defined datatype here. > > Ok. > >> 2012/9/21 Tom Lane <tgl@sss.pgh.pa.us>: >>> Tatsuo Ishii <ishii@postgresql.org> writes: >>>> To pass 64-bit integer to PQfn, PQArgBlock is used like this: int *ptr >>>> is a pointer to 64-bit integer and actual data is placed somewhere >>>> else. >>> >>> Yeah, I think we have to do it like that. Changing the size of >>> PQArgBlock would be a libpq ABI break, which IMO is sufficiently painful >>> to kill this whole proposal. Much better a little localized ugliness >>> in fe-lobj.c. >>> >> Hmm, I see. Please deliver the 64bit integer argument as reference, >> and don't forget endian translations here. > > I thought pgPutInt64() takes care of endianness. No? > It works inside of the PGfn(), when isint = 1 towards pointer data type. In my sense, it is a bit problem specific solution. So, I'd like to see other person's opinion here. Thanks, -- KaiGai Kohei <kaigai@kaigai.gr.jp>
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Remove all the special-case code for INT64_IS_BUSTED, per decision that
- 901be0fad403 9.0.0 cited