@@ -47,7 +47,6 @@ typedef struct JsonbAggState
47
47
} JsonbAggState ;
48
48
49
49
static inline Datum jsonb_from_cstring (char * json , int len , bool unique_keys );
50
- static size_t checkStringLen (size_t len );
51
50
static void jsonb_in_object_start (void * pstate );
52
51
static void jsonb_in_object_end (void * pstate );
53
52
static void jsonb_in_array_start (void * pstate );
@@ -266,18 +265,6 @@ jsonb_from_cstring(char *json, int len, bool unique_keys)
266
265
PG_RETURN_JSONB_P (JsonbValueToJsonb (state .res ));
267
266
}
268
267
269
- static size_t
270
- checkStringLen (size_t len )
271
- {
272
- if (len > JENTRY_OFFLENMASK )
273
- ereport (ERROR ,
274
- (errcode (ERRCODE_PROGRAM_LIMIT_EXCEEDED ),
275
- errmsg ("string too long to represent as jsonb string" ),
276
- errdetail ("Due to an implementation restriction, jsonb strings cannot exceed %d bytes." ,
277
- JENTRY_OFFLENMASK )));
278
-
279
- return len ;
280
- }
281
268
282
269
static void
283
270
jsonb_in_object_start (void * pstate )
@@ -320,7 +307,7 @@ jsonb_in_object_field_start(void *pstate, char *fname, bool isnull)
320
307
321
308
Assert (fname != NULL );
322
309
v .type = jbvString ;
323
- v .val .string .len = checkStringLen ( strlen (fname ) );
310
+ v .val .string .len = strlen (fname );
324
311
v .val .string .val = fname ;
325
312
326
313
_state -> res = pushJsonbValue (& _state -> parseState , WJB_KEY , & v );
@@ -370,7 +357,7 @@ jsonb_in_scalar(void *pstate, char *token, JsonTokenType tokentype)
370
357
case JSON_TOKEN_STRING :
371
358
Assert (token != NULL );
372
359
v .type = jbvString ;
373
- v .val .string .len = checkStringLen ( strlen (token ) );
360
+ v .val .string .len = strlen (token );
374
361
v .val .string .val = token ;
375
362
break ;
376
363
case JSON_TOKEN_NUMBER :
@@ -860,7 +847,7 @@ datum_to_jsonb(Datum val, bool is_null, JsonbInState *result,
860
847
default :
861
848
outputstr = OidOutputFunctionCall (outfuncoid , val );
862
849
jb .type = jbvString ;
863
- jb .val .string .len = checkStringLen ( strlen (outputstr ) );
850
+ jb .val .string .len = strlen (outputstr );
864
851
jb .val .string .val = outputstr ;
865
852
break ;
866
853
}
0 commit comments