Comments (3)
Inderjeet knows more about this, but I believe this is a shortcoming with a
JavaCC
parser. It is not efficient at parsing long string values; therefore, if you
have a
field in your JSON object with a very long String value (like a stack trace,
etc.)
then this will occur. We explicitly catch this "Error" and rethrow it as a
JsonParseException which should be safe as by the error is caught, all the
recursive
function calls have popped off the stack.
We actually have a test for this scenario to ensure that a "JsonParseException"
is
thrown instead of a StackOverflowError so that it will not take down the JVM
(unless
the client doesn't not care about catching any JsonParseException).
This issue will be fixed once a new parser is implement. See issue #28.
Original comment by [email protected]
on 23 Sep 2008 at 5:11
from gson.
Looks like this was fixed by Inderjeet in r256.
Original comment by [email protected]
on 13 Oct 2008 at 3:22
from gson.
Yes, I have tested the new Gson with strings of size up to 20MB and it worked
fine.
It probably will work for even larger strings, but the test itself starts to
generate
too much GC. Previously, Gson was able to handle strings of about 100kb on the
same
test so I am excited about this fix.
Original comment by inder123
on 13 Oct 2008 at 3:37
- Changed state: Fixed
from gson.
Related Issues (20)
- fromJson(String json, Class<T> classOfT) throws JsonSyntaxException is not thawing exception HOT 1
- 打个广告 gson 10倍速度提升 https://github.com/NBXXF/gson_plugin HOT 1
- About gson multiple field conflict error reporting HOT 1
- Using gson to deserialize error reporting, the gson version I use is 2.10.1 HOT 4
- Why can't Gson serialize the value of the scala.collection.immutable.Map type member variable of the case class into a JSON string,while java.util.HashMap is ok? HOT 1
- Add jackson-databind license header to `ISO8601Utils` and `UtcDateTypeAdapter` HOT 2
- Possible typo at gson readme.md in main branch HOT 2
- Javascript HOT 22
- Gson cannot serialize subclass who override a field HOT 1
- Add support for Optional<T> in parsing instead of null HOT 4
- Poor performance for String serialization HOT 1
- IllegalStateException: TypeToken must be created when using GSON 2.10.1 and R8 on Android HOT 3
- Assertion is Missed to Validate testWriterCloseIsIdempotent Test for JsonWriter's Idempotency
- Assertion is Missed to Validate `testWriterCloseIsIdempotent` Test for JsonWriter's Idempotency HOT 2
- Split `testWriteHtmlSafe` into Two Separate Test Cases for Improved Test Granularity HOT 2
- GSON deserialization fails with ClassCastException: Cannot cast com.google.gson.internal.LinkedTreeMap to androidx.collection.ArrayMap HOT 1
- OSS-Fuzz issue 67620 HOT 3
- Edge case where R8 removes the TypeToken's generic type (while consuming the library's recently updated proguard rules)
- `JsonReader#beginObject` should throw checked exceptions, instead throws runtime `IllegalStateException`. HOT 2
- Serialization failure at index 0 and 1 in camel case field naming convention HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gson.