0001-use-truncate_pg_identifier-on-fields-and-table-names.patch
wcs_olap/feeder.py | ||
---|---|---|
309 | 309 | |
310 | 310 |
def hash_table_name(self, table_name, hash_length=6, force_hash=False): |
311 | 311 |
table_name = table_name.format(**self.default_ctx) |
312 |
if len(table_name) < 64 and not force_hash: |
|
313 |
return table_name |
|
314 |
else: |
|
315 |
return table_name[:63 - hash_length] + hashlib.md5(table_name.encode('utf-8')).hexdigest()[:hash_length] |
|
312 |
return truncate_pg_identifier(table_name, hash_length=hash_length, force_hash=force_hash) |
|
316 | 313 | |
317 | 314 |
@property |
318 | 315 |
def default_ctx(self): |
... | ... | |
686 | 683 |
continue |
687 | 684 |
columns[field.varname] = { |
688 | 685 |
'field': field, |
689 |
'sql_col_name': 'field_%s' % field.varname,
|
|
686 |
'sql_col_name': truncate_pg_identifier('field_%s' % field.varname),
|
|
690 | 687 |
'sql_col_def': field_def, |
691 | 688 |
'sql_comment': field.label, |
692 | 689 |
} |
... | ... | |
857 | 854 |
if field.varname and raw is not None: |
858 | 855 |
json_data[field.varname] = raw |
859 | 856 | |
860 |
row['field_%s' % field.varname] = v
|
|
857 |
row[truncate_pg_identifier('field_%s' % field.varname)] = v
|
|
861 | 858 |
if self.has_jsonb: |
862 | 859 |
row['json_data'] = json.dumps(json_data) |
863 | 860 |
# add geolocation fields value |
... | ... | |
1059 | 1056 |
join = None |
1060 | 1057 | |
1061 | 1058 |
join_name = 'join_' + field.varname |
1062 |
field_name = 'field_%s' % field.varname
|
|
1059 |
field_name = truncate_pg_identifier('field_%s' % field.varname)
|
|
1063 | 1060 |
dimension_name = field.varname |
1064 | 1061 |
dimension_label = field.label.lower() |
1065 | 1062 | |
1066 |
- |