@@ -69,7 +69,6 @@ typedef struct JsonbAggState
69
69
} JsonbAggState ;
70
70
71
71
static inline Datum jsonb_from_cstring (char * json , int len );
72
- static size_t checkStringLen (size_t len );
73
72
static void jsonb_in_object_start (void * pstate );
74
73
static void jsonb_in_object_end (void * pstate );
75
74
static void jsonb_in_array_start (void * pstate );
@@ -285,18 +284,6 @@ jsonb_from_cstring(char *json, int len)
285
284
PG_RETURN_JSONB_P (JsonbValueToJsonb (state .res ));
286
285
}
287
286
288
- static size_t
289
- checkStringLen (size_t len )
290
- {
291
- if (len > JENTRY_OFFLENMASK )
292
- ereport (ERROR ,
293
- (errcode (ERRCODE_PROGRAM_LIMIT_EXCEEDED ),
294
- errmsg ("string too long to represent as jsonb string" ),
295
- errdetail ("Due to an implementation restriction, jsonb strings cannot exceed %d bytes." ,
296
- JENTRY_OFFLENMASK )));
297
-
298
- return len ;
299
- }
300
287
301
288
static void
302
289
jsonb_in_object_start (void * pstate )
@@ -338,7 +325,7 @@ jsonb_in_object_field_start(void *pstate, char *fname, bool isnull)
338
325
339
326
Assert (fname != NULL );
340
327
v .type = jbvString ;
341
- v .val .string .len = checkStringLen ( strlen (fname ) );
328
+ v .val .string .len = strlen (fname );
342
329
v .val .string .val = fname ;
343
330
344
331
_state -> res = pushJsonbValue (& _state -> parseState , WJB_KEY , & v );
@@ -388,7 +375,7 @@ jsonb_in_scalar(void *pstate, char *token, JsonTokenType tokentype)
388
375
case JSON_TOKEN_STRING :
389
376
Assert (token != NULL );
390
377
v .type = jbvString ;
391
- v .val .string .len = checkStringLen ( strlen (token ) );
378
+ v .val .string .len = strlen (token );
392
379
v .val .string .val = token ;
393
380
break ;
394
381
case JSON_TOKEN_NUMBER :
@@ -887,7 +874,7 @@ datum_to_jsonb(Datum val, bool is_null, JsonbInState *result,
887
874
default :
888
875
outputstr = OidOutputFunctionCall (outfuncoid , val );
889
876
jb .type = jbvString ;
890
- jb .val .string .len = checkStringLen ( strlen (outputstr ) );
877
+ jb .val .string .len = strlen (outputstr );
891
878
jb .val .string .val = outputstr ;
892
879
break ;
893
880
}
0 commit comments