On 2017-08-11 11:14:44 -0400, Robert Haas wrote: > On Fri, Aug 11, 2017 at 4:39 AM, Thomas Munro > <thomas.mu...@enterprisedb.com> wrote: > > OK. Now it's ds_hash_table.{c,h}, where "ds" stands for "dynamic > > shared". Better? If we were to do other data structures in DSA > > memory they could follow that style: ds_red_black_tree.c, ds_vector.c, > > ds_deque.c etc and their identifier prefix would be drbt_, dv_, dd_ > > etc. > > > > Do you want to see a separate patch to rename dsa.c? Got a better > > name? You could have spoken up earlier :-) It does sound like a bit > > like the thing from crypto or perhaps a scary secret government > > department.
I, and I bet a lot of other people, kind of missed dsa being merged for a while... > I doubt that we really want to have accessor functions with names like > dynamic_shared_hash_table_insert or ds_hash_table_insert. Long names > are fine, even desirable, for APIs that aren't too widely used, > because they're relatively self-documenting, but a 30-character > function name gets annoying in a hurry if you have to call it very > often, and this is intended to be reusable for other things that want > a dynamic shared memory hash table. I think we should (a) pick some > reasonably short prefix for all the function names, like dht or dsht > or ds_hash, but not ds_hash_table or dynamic_shared_hash_table and (b) > also use that prefix as the name for the .c and .h files. Yea, I agree with this. Something dsmhash_{insert,...}... seems like it'd kinda work without being too ambiguous like dht imo is, while still being reasonably short. > Right now, we've got a situation where the most widely-used hash table > implementation uses dynahash.c for the code, hsearch.h for the > interface, and "hash" as the prefix for the names, and that's really > hard to remember. I think having a consistent naming scheme > throughout would be a lot better. Yea, that situation still occasionally confuses me, a good 10 years after starting to look at pg... There's even a a dynahash.h, except it's useless. And dynahash.c doesn't even include hsearch.h directly (included via shmem.h)! Personally I'd actually in favor of moving hsearch.h stuff into dynahash.h and leave hsearch as a wrapper. - Andres -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers