{"action":"created","issue":{"url":"https://api.github.com/repos/infinispan/infinispan/issues/6411","repository_url":"https://api.github.com/repos/infinispan/infinispan","labels_url":"https://api.github.com/repos/infinispan/infinispan/issues/6411/labels{/name}","comments_url":"https://api.github.com/repos/infinispan/infinispan/issues/6411/comments","events_url":"https://api.github.com/repos/infinispan/infinispan/issues/6411/events","html_url":"https://github.com/infinispan/infinispan/pull/6411","id":381119104,"node_id":"MDExOlB1bGxSZXF1ZXN0MjMxMTYxMDE4","number":6411,"title":"ISPN-9720 JDK11: An illegal reflective access operation has occurred","user":{"login":"TomasHofman","id":353221,"node_id":"MDQ6VXNlcjM1MzIyMQ==","avatar_url":"https://avatars2.githubusercontent.com/u/353221?v=4","gravatar_id":"","url":"https://api.github.com/users/TomasHofman","html_url":"https://github.com/TomasHofman","followers_url":"https://api.github.com/users/TomasHofman/followers","following_url":"https://api.github.com/users/TomasHofman/following{/other_user}","gists_url":"https://api.github.com/users/TomasHofman/gists{/gist_id}","starred_url":"https://api.github.com/users/TomasHofman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/TomasHofman/subscriptions","organizations_url":"https://api.github.com/users/TomasHofman/orgs","repos_url":"https://api.github.com/users/TomasHofman/repos","events_url":"https://api.github.com/users/TomasHofman/events{/privacy}","received_events_url":"https://api.github.com/users/TomasHofman/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2018-11-15T11:29:53Z","updated_at":"2018-11-16T08:59:35Z","closed_at":null,"author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/infinispan/infinispan/pulls/6411","html_url":"https://github.com/infinispan/infinispan/pull/6411","diff_url":"https://github.com/infinispan/infinispan/pull/6411.diff","patch_url":"https://github.com/infinispan/infinispan/pull/6411.patch"},"body":"https://issues.jboss.org/browse/ISPN-9720\r\nhttps://issues.jboss.org/browse/JBEAP-15798\r\n\r\nUpstream PR TBD.\r\n\r\nThis is to avoid illegal access warnings on JDK 10+. Three classes were changed, which used reflection to access private fields in JDK types:\r\n* IntSummaryStatisticsExternalizer\r\n* LongSummaryStatisticsExternalizer\r\n* DoubleSummaryStatisticsExternalizer (see bellow for details on this one)\r\n\r\nSince JDK 10, relevant JDK types ([Int|Long|Double]SummaryStatistics) have gotten new parametrized constructors, so reflective access to set their inner state is no longer necessary.\r\n\r\nThe `DoubleSummaryStatistics` case is however somewhat problematic - except for `sum`, `count`, `min` and `max` fields (that are accessible by public API), the externalizer used to also access and serialize `sumCompensation` and `simpleSum` fields, which are technically implementation specific fields (i.e. do not have to exist in all JDKs) and are not accessible by the API. The purpose of those fields is to improve precision of the summation. *This change omits those fields during (de)serialization, which may lead to lower precision of deserialized instance compared to the original instance.*"},"comment":{"url":"https://api.github.com/repos/infinispan/infinispan/issues/comments/439326244","html_url":"https://github.com/infinispan/infinispan/pull/6411#issuecomment-439326244","issue_url":"https://api.github.com/repos/infinispan/infinispan/issues/6411","id":439326244,"node_id":"MDEyOklzc3VlQ29tbWVudDQzOTMyNjI0NA==","user":{"login":"TomasHofman","id":353221,"node_id":"MDQ6VXNlcjM1MzIyMQ==","avatar_url":"https://avatars2.githubusercontent.com/u/353221?v=4","gravatar_id":"","url":"https://api.github.com/users/TomasHofman","html_url":"https://github.com/TomasHofman","followers_url":"https://api.github.com/users/TomasHofman/followers","following_url":"https://api.github.com/users/TomasHofman/following{/other_user}","gists_url":"https://api.github.com/users/TomasHofman/gists{/gist_id}","starred_url":"https://api.github.com/users/TomasHofman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/TomasHofman/subscriptions","organizations_url":"https://api.github.com/users/TomasHofman/orgs","repos_url":"https://api.github.com/users/TomasHofman/repos","events_url":"https://api.github.com/users/TomasHofman/events{/privacy}","received_events_url":"https://api.github.com/users/TomasHofman/received_events","type":"User","site_admin":false},"created_at":"2018-11-16T08:59:35Z","updated_at":"2018-11-16T08:59:35Z","author_association":"NONE","body":"@wburns Thanks, if you'd prefer multi version let me know and I can rework. I guess that would mean what you have in commons module - second source dir. Although I'm not sure if java10 classes can be tested in this multi version setup. "}}
{"actor":{"display_login":"TomasHofman"}}