Projet

Général

Profil

0001-misc-increase-json-index-table-name-hash-size-33009.patch

Frédéric Péters, 11 mai 2019 10:34

Télécharger (1,66 ko)

Voir les différences:

Subject: [PATCH] misc: increase json index table name hash size (#33009)

 wcs_olap/feeder.py | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
wcs_olap/feeder.py
287 287
        self.cur.execute("SELECT 1 FROM pg_type WHERE typname = 'jsonb'")
288 288
        return bool(self.cur.rowcount)
289 289

  
290
    def hash_table_name(self, table_name):
290
    def hash_table_name(self, table_name, hash_length=6):
291 291
        table_name = table_name.format(**self.default_ctx)
292 292
        if len(table_name) < 64:
293 293
            return table_name
294 294
        else:
295
            return table_name[:57] + hashlib.md5(table_name).hexdigest()[:6]
295
            return table_name[:63-hash_length] + hashlib.md5(table_name).hexdigest()[:hash_length]
296 296

  
297 297
    @property
298 298
    def default_ctx(self):
......
554 554
    def create_formdata_json_index(self, varname):
555 555
        if varname in self.formdata_json_index:
556 556
            return
557
        index_name = self.hash_table_name('{formdata_table}_%s_json_idx' % varname)
557
        index_name = self.hash_table_name('{formdata_table}_%s_json_idx' % varname,
558
                hash_length=8)
558 559
        self.ex('CREATE INDEX {index_name} ON {generic_formdata_table} (("json_data"->>%s))',
559 560
                ctx={'index_name': index_name}, vars=[varname])
560 561
        # prevent double creation
561
-