[jira] [Updated] (GEODE-10368) New warnings Visual Studio compilation issues

2022-06-08 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-10368?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-10368:
-
Labels:   (was: needsTriage)

> New warnings Visual Studio compilation issues 
> --
>
> Key: GEODE-10368
> URL: https://issues.apache.org/jira/browse/GEODE-10368
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Vince Ford
>Priority: Major
>
> Using later Visual Studio MSVC 19.29.30145.0, two new warnings are being 
> generated that block compilation of the native client.  
> nativeclient\cppcache\src\TcrMessage.cpp(3217,12): warning C4101: 'exMsg': 
> unreferenced local variable 
> [C:\build\dependencies\nativeclient\cppcache\static\apache-geode-static.vcxproj]
>  
> nativeclient\cppcache\src\ThinClientRedundancyManager.cpp(91,58): warning 
> C4267: 'argument': conversion from 'size_t' to 'int32_t', possible loss of 
> data 
> [C:\build\dependencies\nativeclient\cppcache\static\apache-geode-static.vcxproj]
>  
> Suggested fixes, delete exMsg as unused variable and do a static cast of the 
> value to int32_t.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Updated] (GEODE-10368) New warnings Visual Studio compilation issues

2022-06-08 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-10368?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-10368:
-
Affects Version/s: (was: 1.15.0)

> New warnings Visual Studio compilation issues 
> --
>
> Key: GEODE-10368
> URL: https://issues.apache.org/jira/browse/GEODE-10368
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Vince Ford
>Priority: Major
>  Labels: needsTriage
>
> Using later Visual Studio MSVC 19.29.30145.0, two new warnings are being 
> generated that block compilation of the native client.  
> nativeclient\cppcache\src\TcrMessage.cpp(3217,12): warning C4101: 'exMsg': 
> unreferenced local variable 
> [C:\build\dependencies\nativeclient\cppcache\static\apache-geode-static.vcxproj]
>  
> nativeclient\cppcache\src\ThinClientRedundancyManager.cpp(91,58): warning 
> C4267: 'argument': conversion from 'size_t' to 'int32_t', possible loss of 
> data 
> [C:\build\dependencies\nativeclient\cppcache\static\apache-geode-static.vcxproj]
>  
> Suggested fixes, delete exMsg as unused variable and do a static cast of the 
> value to int32_t.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Resolved] (GEODE-10181) GFSH needs to support JDK17 GCs

2022-05-09 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-10181?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-10181.
--
Resolution: Fixed

fixed via https://issues.apache.org/jira/browse/GEODE-10206

> GFSH needs to support JDK17 GCs
> ---
>
> Key: GEODE-10181
> URL: https://issues.apache.org/jira/browse/GEODE-10181
> Project: Geode
>  Issue Type: Improvement
>  Components: gfsh
>Reporter: Ernest Burghardt
>Assignee: Kirk Lund
>Priority: Major
>  Labels: Java17
>
> Geode will be supporting JDK 17 and Gfsh needs to support GC available;
>  



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Resolved] (GEODE-10152) Make gfsh "wrapper" scripts compatible with Java 17

2022-05-09 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-10152?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-10152.
--
Resolution: Won't Fix

scripts are not JDK dependent

> Make gfsh "wrapper" scripts compatible with Java 17
> ---
>
> Key: GEODE-10152
> URL: https://issues.apache.org/jira/browse/GEODE-10152
> Project: Geode
>  Issue Type: Improvement
>  Components: gfsh
>Affects Versions: 1.15.0
>Reporter: Dale Emery
>Assignee: Kirk Lund
>Priority: Major
>  Labels: Java17
>
> On JDK 17, the Gfsh "wrapper" scripts  (geode-assembly/src/main/dist/bin/gfsh 
> and geode-assembly/src/main/dist/bin/gfsh.bat) must open/export all required 
> packages when they run the Geode CLI launcher 
> (org.apache.geode.management.internal.cli.Launcher) via Java.
>  
> Also, Gfsh must open and export all required packages whenever it starts Java 
> process that will execute Geode code.
>  
> Here is a possible approach: * Create argument files for each set of 
> opens/exports that are selected together. Each argument file will define the 
> {{--add-opens}} and {{--add-exports}} commands for the relevant packages.
>  * Change the Gfsh executables (geode-assembly/src/main/dist/bin/gfsh and 
> geode-assembly/src/main/dist/bin/gfsh) to:
>  ** Inspect the requested JDK to learn the version and OS it reports.
>  ** Select the argument files for the JDK based on its version and OS
>  ** Add the argument files to the java command line when starting the CLI 
> launcher.
>  * Change Gfsh Java classes to forward the opens/exports when launching java 
> subprocesses (e.g. when starting a locator or server).



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Assigned] (GEODE-9475) ObjectSizer will fail on java 16 and later

2022-05-09 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-9475?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt reassigned GEODE-9475:
---

Assignee: Ernest Burghardt

> ObjectSizer will fail on java 16 and later
> --
>
> Key: GEODE-9475
> URL: https://issues.apache.org/jira/browse/GEODE-9475
> Project: Geode
>  Issue Type: Bug
>  Components: core
>Reporter: Darrel Schneider
>Assignee: Ernest Burghardt
>Priority: Major
>  Labels: Java16, Java17
>
> The instances of org.apache.geode.cache.util.ObjectSizer, SIZE_CLASS_ONCE, 
> REFLECTION_SIZE, and DEFAULT will not work on java 16 and later because they 
> call Field.setAccessible which is not allowed under normal conditions 
> starting with java 16 (see: 
> https://softwaregarden.dev/en/posts/new-java/illegal-access-in-java-16 ).
> To workaround this failure set the JVM command line option: 
> --illegal-access=permit
> These ObjectSizer instances are used in a number of places internally by 
> geode and can also explicitly be configured by users. Internally they are 
> used by default for eviction (heap or mem), the wan gateway, and tombstone 
> gc. Most all regions produce tombstones so that is the most likely point of 
> failure.
> The code that calls setAccessible is: 
> org.apache.geode.internal.size.ObjectTraverser#buildFieldSet and it is not 
> clear how this code can be changed to do its job without using setAccessible.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Assigned] (GEODE-9473) Geode deserialization will fail on java 16

2022-05-09 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-9473?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt reassigned GEODE-9473:
---

Assignee: Ernest Burghardt

> Geode deserialization will fail on java 16
> --
>
> Key: GEODE-9473
> URL: https://issues.apache.org/jira/browse/GEODE-9473
> Project: Geode
>  Issue Type: Bug
>  Components: serialization
>Reporter: Darrel Schneider
>Assignee: Ernest Burghardt
>Priority: Major
>  Labels: Java16, Java17
>
> In three different places geode deserialization calls setAccessible in order 
> to make the constructor callable. This will not work on java 16 and later 
> because it calls Field.setAccessible which is not allowed under normal 
> conditions starting with java 16 (see: 
> https://softwaregarden.dev/en/posts/new-java/illegal-access-in-java-16 ).
> To workaround this failure set the JVM command line option: 
> --illegal-access=permit or use --add-opens.
> The places that make the calls for deserialization are:
> * org.apache.geode.internal.InternalDataSerializer#newInstance
> * org.apache.geode.internal.InternalDataSerializer#readDataSerializable
> * org.apache.geode.internal.InternalInstantiator#newInstance



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Assigned] (GEODE-9469) CopyHelper.copy will fail on java 16 and later when copying instances of Clonable

2022-05-09 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-9469?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt reassigned GEODE-9469:
---

Assignee: Ernest Burghardt

> CopyHelper.copy will fail on java 16 and later when copying instances of 
> Clonable
> -
>
> Key: GEODE-9469
> URL: https://issues.apache.org/jira/browse/GEODE-9469
> Project: Geode
>  Issue Type: Bug
>  Components: core
>Reporter: Darrel Schneider
>Assignee: Ernest Burghardt
>Priority: Major
>  Labels: Java16, Java17
>
> CopyHelper.copy is an API that allows geode users to make copies of objects. 
> It is also used internally by a number of geode features. The copy-on-read 
> region attribute is one example. If the object being copied is an instance of 
> Cloneable then on java 16, copy will throw a RuntimeException which is an 
> instance of java.lang.reflect.InaccessibleObjectException.
> The copy code tries to catch exceptions during the clone and instead use 
> serialization to make a copy but it does not catch RuntimeException which is 
> what java 16 throws from setAccessible. It would be pretty easy to fix this 
> exception handling.
> The only work arounds are to not implement Cloneable or to start the jvm with 
> the command line option: --illegal-access=permit.
>  See: 
> [https://softwaregarden.dev/en/posts/new-java/illegal-access-in-java-16|https://softwaregarden.dev/en/posts/new-java/illegal-access-in-java-16/]
>  



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Assigned] (GEODE-9470) Some geode queries will fail on java 16 and later

2022-05-09 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-9470?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt reassigned GEODE-9470:
---

Assignee: Ernest Burghardt

> Some geode queries will fail on java 16 and later
> -
>
> Key: GEODE-9470
> URL: https://issues.apache.org/jira/browse/GEODE-9470
> Project: Geode
>  Issue Type: Bug
>  Components: querying
>Reporter: Darrel Schneider
>Assignee: Ernest Burghardt
>Priority: Major
>  Labels: Java16, Java17
>
> In some cases a geode query uses reflection to read a field or call a 
> function.
> If that happens on java 16 then the query will fail throwing a 
> RuntimeException that is an instance of 
> java.lang.reflect.InaccessibleObjectException. See: 
> https://softwaregarden.dev/en/posts/new-java/illegal-access-in-java-16.
> To workaround this failure set the JVM command line option: 
> --illegal-access=permit
> The query code that calls setAccessible is in two places:
> org.apache.geode.cache.query.internal.AttributeDescriptor#getReadMember
> org.apache.geode.cache.query.internal.MethodDispatch#MethodDispatch



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Assigned] (GEODE-9467) pdx ReflectionBasedAutoSerializer will fail on java 16 and later

2022-05-09 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-9467?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt reassigned GEODE-9467:
---

Assignee: Ernest Burghardt

> pdx ReflectionBasedAutoSerializer will fail on java 16 and later
> 
>
> Key: GEODE-9467
> URL: https://issues.apache.org/jira/browse/GEODE-9467
> Project: Geode
>  Issue Type: Bug
>  Components: serialization
>Reporter: Darrel Schneider
>Assignee: Ernest Burghardt
>Priority: Major
>  Labels: Java16, Java17
>
> The pdx ReflectionBasedAutoSerializer will not work on java 16 and later 
> because it calls Field.setAccessible which is not allowed under normal 
> conditions starting with java 16 (see: 
> [https://softwaregarden.dev/en/posts/new-java/illegal-access-in-java-16|https://softwaregarden.dev/en/posts/new-java/illegal-access-in-java-16/]
>  
> [).|https://stackoverflow.com/questions/41265266/how-to-solve-inaccessibleobjectexception-unable-to-make-member-accessible-m).]
> To workaround this failure set the JVM command line option: 
> --illegal-access=permit
> The call is made in 
> org.apache.geode.pdx.internal.AutoSerializableManager#getClassInfo and is 
> required for the auto serializer to function correctly.
>  
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Resolved] (GEODE-10003) Support JDK 17 on Geode

2022-05-09 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-10003?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-10003.
--
Resolution: Fixed

> Support JDK 17 on Geode
> ---
>
> Key: GEODE-10003
> URL: https://issues.apache.org/jira/browse/GEODE-10003
> Project: Geode
>  Issue Type: Improvement
>Reporter: Owen Nichols
>Priority: Major
>  Labels: Java17, jdk17
>
> JDK 17 Schedule: [https://openjdk.java.net/projects/jdk/17/]
> The first ticket to suggest going beyond JDK8 was GEODE-3.  Now that JDK17 is 
> LTS, and Spring and other users are embracing JDK17, Geode should at least 
> run (if not compile) on JDK17.
> This may take a lot of work, possibly requiring a new major release.  Please 
> add subtasks to this ticket as necessary.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Updated] (GEODE-10007) Make o.a.geode.cache.internal.HttpService SPI part of the non-internal, public API

2022-05-09 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-10007?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-10007:
-
Parent: (was: GEODE-10003)
Issue Type: Improvement  (was: Sub-task)

> Make o.a.geode.cache.internal.HttpService SPI part of the non-internal, 
> public API
> --
>
> Key: GEODE-10007
> URL: https://issues.apache.org/jira/browse/GEODE-10007
> Project: Geode
>  Issue Type: Improvement
>Reporter: John Blum
>Priority: Minor
>
> The {{HttpService}} interface is defined and used as a _Service Provider 
> Interface_ (SPI) inside Apache Geode and even loaded as such with _Java's_ 
> {{ServerLoader}} 
> ([Javadoc|https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ServiceLoader.html])
>  class in order to locate and load provider implementations.
> An SPI is not much good if "providers" are not allowed to "provide" an 
> implementation of the service interfaces used to extend or customize Apache 
> Geode.  A proper SPI affords any application, framework, tool or product a 
> degree of extensibility and flexibility, applied by users without 
> intervention by being able to "provide" a custom implementation or extension 
> as needed by the application, framework, tool or product.
> 1 such example would be to be able to supply a Jakarta EE 9 (specification) 
> compliant implementation of an embedded HTTP server (e.g. Jetty, Tomcat or 
> even Undertow) used by Geode to bootstrap the embedded HTTP service hosting 
> the Geode provided Web apps (e.g. Pulse, Management/Admin REST API, Developer 
> REST API) when external hosting is not an option.  Of course, these Apache 
> Geode provided, internal Web apps need to be updated as well (to use the new 
> Jakarta EE 9 specs).
> There are other examples of SPIs used in Apache Geode, which are part of the 
> non-internal, public API. 
> For example, the 
> [ServerLaucherCacheProvider|https://geode.apache.org/releases/latest/javadoc/org/apache/geode/distributed/ServerLauncherCacheProvider.html]
>  interface, with 1 such 
> [implementation|https://docs.spring.io/spring-data/geode/docs/current/api/org/springframework/data/gemfire/support/SpringServerLauncherCacheProvider.html]
>  provided by _Spring Data for Apache Geode_ (SDG) itself, is highly useful 
> and valuable in certain configuration arrangements.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Resolved] (GEODE-9393) Apache Geode does not run on Java 16/17

2022-05-09 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-9393?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-9393.
-
Resolution: Won't Fix

Geode does not build on post Java 8 currently by designe

> Apache Geode does not run on Java 16/17
> ---
>
> Key: GEODE-9393
> URL: https://issues.apache.org/jira/browse/GEODE-9393
> Project: Geode
>  Issue Type: Sub-task
>  Components: core
>Affects Versions: 1.13.2
>Reporter: John Blum
>Priority: Blocker
>  Labels: Java16, Java17
>
> Due to Java 16 tightened restrictions, Apache Geode fails to run on a Java 16 
> Runtime (JRE).
> Exceptions like the following are thrown:
> {code}
> - org.apache.geode.InternalGemFireException: unable to retrieve underlying 
> byte buffer
> -  at 
> org.apache.geode.internal.net.BufferPool.getPoolableBuffer(BufferPool.java:346)
> -  at 
> org.apache.geode.internal.net.BufferPool.releaseBuffer(BufferPool.java:310)
> -  at 
> org.apache.geode.internal.net.BufferPool.releaseSenderBuffer(BufferPool.java:213)
> -  at org.apache.geode.internal.tcp.MsgStreamer.release(MsgStreamer.java:100)
> -  at 
> org.apache.geode.internal.tcp.MsgStreamer.writeMessage(MsgStreamer.java:256)
> -  at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToMany(DirectChannel.java:306)
> -  at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToOne(DirectChannel.java:182)
> -  at 
> org.apache.geode.distributed.internal.direct.DirectChannel.send(DirectChannel.java:511)
> -  at 
> org.apache.geode.distributed.internal.DistributionImpl.directChannelSend(DistributionImpl.java:346)
> -  at 
> org.apache.geode.distributed.internal.DistributionImpl.send(DistributionImpl.java:291)
> -  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendViaMembershipManager(ClusterDistributionManager.java:2050)
> -  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1978)
> -  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendMessage(ClusterDistributionManager.java:2015)
> -  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.putOutgoing(ClusterDistributionManager.java:1083)
> -  at 
> org.apache.geode.distributed.internal.StartupMessage.process(StartupMessage.java:279)
> -  at 
> org.apache.geode.distributed.internal.DistributionMessage.scheduleAction(DistributionMessage.java:376)
> -  at 
> org.apache.geode.distributed.internal.DistributionMessage$1.run(DistributionMessage.java:441)
> -  at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
> -  at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
> -  at 
> org.apache.geode.distributed.internal.ClusterOperationExecutors.runUntilShutdown(ClusterOperationExecutors.java:441)
> -  at 
> org.apache.geode.distributed.internal.ClusterOperationExecutors.doWaitingThread(ClusterOperationExecutors.java:410)
> -  at 
> org.apache.geode.logging.internal.executors.LoggingThreadFactory.lambda$newThread$0(LoggingThreadFactory.java:119)
> -  at java.base/java.lang.Thread.run(Thread.java:831)
> - Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make 
> public java.lang.Object java.nio.DirectByteBuffer.attachment() accessible: 
> module java.base does not "opens java.nio" to unnamed module @40f9161a
> -  at 
> java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:357)
> -  at 
> java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
> -  at 
> java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199)
> -  at java.base/java.lang.reflect.Method.setAccessible(Method.java:193)
> -  at 
> org.apache.geode.internal.net.BufferPool.getPoolableBuffer(BufferPool.java:343)
> -  ... 22 common frames omitted
> - 2021-04-30 14:57:13,638  INFO ributed.internal.membership.gms.Services: 606 
> - received leave request from 
> 10.99.199.28(CacheNotUsingSharedConfigurationIntegrationTest:29149):41001 
> for 
> 10.99.199.28(CacheNotUsingSharedConfigurationIntegrationTest:29149):41001
> - 2021-04-30 14:57:13,640  INFO ributed.internal.membership.gms.Services: 617 
> - JoinLeave.processMessage(LeaveRequestMessage) invoked.  isCoordinator=true; 
> isStopping=false; cancelInProgress=false
> - 2021-04-30 14:57:13,647 ERROR xecutors.LoggingUncaughtExceptionHandler:  92 
> - Uncaught exception in thread Thread[P2P message reader for 
> 10.99.199.28(CacheNotUsingSharedConfigurationIntegrationTest:29149):41001 
> shared unordered uid=1 local port=53039 remote port=64063,10,main]
> - org.apache.geode.InternalGemFireException: unable to retrieve underlying 
> byte buffer
> -  at 
> 

[jira] [Resolved] (GEODE-9657) Javadoc errors occur on Java 17 due to split packages in Geode

2022-05-09 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-9657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-9657.
-
Resolution: Won't Fix

Only applicable when running with Modules

> Javadoc errors occur on Java 17 due to split packages in Geode
> --
>
> Key: GEODE-9657
> URL: https://issues.apache.org/jira/browse/GEODE-9657
> Project: Geode
>  Issue Type: Sub-task
>  Components: core
>Affects Versions: 1.13.4, 1.14.0
>Reporter: John Blum
>Priority: Major
>  Labels: Java17
>
> When trying to build any library, framework (e.g. _Spring Data for Apache 
> Geode_ (SDG)) or application with Apache Geode on Java 17, Javadoc errors 
> occur.
> For example:
> {code}
> 22:36:52  [ERROR] 
> /opt/jenkins/data/workspace/spring-data-geode_3.0.x/spring-data-geode/src/main/java/org/springframework/data/gemfire/function/PojoFunctionWrapper.java:53:
>  error: cannot access Identifiable
> 22:36:52  [ERROR] public class PojoFunctionWrapper implements Function {
> 22:36:52  [ERROR]^
> 22:36:52  [ERROR]   class file for org.apache.geode.lang.Identifiable not 
> found
> {code}
> As it turns out, in Java 17, the _Javadoc_ tool now uses _Java_ modules.  
> _Javadoc_ is started with:
> {code}
> javadoc … --add-modules ALL-MODULE-PATH --module-path --patch-module …
> {code}
> {{geode-core-1.14.0.jar}} ships 
> {{org.apache.geode.lang.AttachAPINotFoundException}} and 
> {{geode-common-1.14.0.jar}} ships {{org.apache.geode.lang.Identifiable}}. Due 
> to this split-package arrangement, _Javadoc_ isn’t discovering 
> {{Identifiable}} because it has found the package {{org.apache.geode.lang}} 
> in {{geode-core-1.14.0.jar}}.
> The best course of action is to make sure all {{org.apache.geode.lang}} 
> sub-packages and class are in 1 JAR (e.g. {{geode-common}}) or the other 
> (i.e. {{geode-core}}).



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Updated] (GEODE-10181) GFSH needs to support JDK17 GCs

2022-04-29 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-10181?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-10181:
-
Description: 
Geode will be supporting JDK 17 and Gfsh needs to support GC available;

 

  was:
Geode will be supporting JDK 17 and Gfsh needs to support GC available;

ZGC by default


> GFSH needs to support JDK17 GCs
> ---
>
> Key: GEODE-10181
> URL: https://issues.apache.org/jira/browse/GEODE-10181
> Project: Geode
>  Issue Type: Improvement
>  Components: gfsh
>Reporter: Ernest Burghardt
>Assignee: Kirk Lund
>Priority: Major
>  Labels: Java17
>
> Geode will be supporting JDK 17 and Gfsh needs to support GC available;
>  



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Resolved] (GEODE-10251) DescribedExternalResource hides test failure if after throws

2022-04-20 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-10251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-10251.
--
Resolution: Fixed

> DescribedExternalResource hides test failure if after throws
> 
>
> Key: GEODE-10251
> URL: https://issues.apache.org/jira/browse/GEODE-10251
> Project: Geode
>  Issue Type: Improvement
>  Components: tests
>Affects Versions: 1.15.0
>Reporter: Dale Emery
>Assignee: Dale Emery
>Priority: Major
>  Labels: Java17, pull-request-available
>
> If DescribedExternalResource.after() throws, any other exception thrown by 
> the statement is lost. This discards any exception thrown by a test or by a 
> rule further down the rule chain.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)


[jira] [Updated] (GEODE-9393) Apache Geode does not run on Java 16/17

2022-04-14 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-9393?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-9393:

Summary: Apache Geode does not run on Java 16/17  (was: Apache Geode does 
not build/run on Java 16/17)

> Apache Geode does not run on Java 16/17
> ---
>
> Key: GEODE-9393
> URL: https://issues.apache.org/jira/browse/GEODE-9393
> Project: Geode
>  Issue Type: Sub-task
>  Components: core
>Affects Versions: 1.13.2
>Reporter: John Blum
>Priority: Blocker
>  Labels: Java16, Java17
>
> Due to Java 16 tightened restrictions, Apache Geode fails to run on a Java 16 
> Runtime (JRE).
> Exceptions like the following are thrown:
> {code}
> - org.apache.geode.InternalGemFireException: unable to retrieve underlying 
> byte buffer
> -  at 
> org.apache.geode.internal.net.BufferPool.getPoolableBuffer(BufferPool.java:346)
> -  at 
> org.apache.geode.internal.net.BufferPool.releaseBuffer(BufferPool.java:310)
> -  at 
> org.apache.geode.internal.net.BufferPool.releaseSenderBuffer(BufferPool.java:213)
> -  at org.apache.geode.internal.tcp.MsgStreamer.release(MsgStreamer.java:100)
> -  at 
> org.apache.geode.internal.tcp.MsgStreamer.writeMessage(MsgStreamer.java:256)
> -  at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToMany(DirectChannel.java:306)
> -  at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToOne(DirectChannel.java:182)
> -  at 
> org.apache.geode.distributed.internal.direct.DirectChannel.send(DirectChannel.java:511)
> -  at 
> org.apache.geode.distributed.internal.DistributionImpl.directChannelSend(DistributionImpl.java:346)
> -  at 
> org.apache.geode.distributed.internal.DistributionImpl.send(DistributionImpl.java:291)
> -  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendViaMembershipManager(ClusterDistributionManager.java:2050)
> -  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1978)
> -  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendMessage(ClusterDistributionManager.java:2015)
> -  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.putOutgoing(ClusterDistributionManager.java:1083)
> -  at 
> org.apache.geode.distributed.internal.StartupMessage.process(StartupMessage.java:279)
> -  at 
> org.apache.geode.distributed.internal.DistributionMessage.scheduleAction(DistributionMessage.java:376)
> -  at 
> org.apache.geode.distributed.internal.DistributionMessage$1.run(DistributionMessage.java:441)
> -  at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
> -  at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
> -  at 
> org.apache.geode.distributed.internal.ClusterOperationExecutors.runUntilShutdown(ClusterOperationExecutors.java:441)
> -  at 
> org.apache.geode.distributed.internal.ClusterOperationExecutors.doWaitingThread(ClusterOperationExecutors.java:410)
> -  at 
> org.apache.geode.logging.internal.executors.LoggingThreadFactory.lambda$newThread$0(LoggingThreadFactory.java:119)
> -  at java.base/java.lang.Thread.run(Thread.java:831)
> - Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make 
> public java.lang.Object java.nio.DirectByteBuffer.attachment() accessible: 
> module java.base does not "opens java.nio" to unnamed module @40f9161a
> -  at 
> java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:357)
> -  at 
> java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
> -  at 
> java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199)
> -  at java.base/java.lang.reflect.Method.setAccessible(Method.java:193)
> -  at 
> org.apache.geode.internal.net.BufferPool.getPoolableBuffer(BufferPool.java:343)
> -  ... 22 common frames omitted
> - 2021-04-30 14:57:13,638  INFO ributed.internal.membership.gms.Services: 606 
> - received leave request from 
> 10.99.199.28(CacheNotUsingSharedConfigurationIntegrationTest:29149):41001 
> for 
> 10.99.199.28(CacheNotUsingSharedConfigurationIntegrationTest:29149):41001
> - 2021-04-30 14:57:13,640  INFO ributed.internal.membership.gms.Services: 617 
> - JoinLeave.processMessage(LeaveRequestMessage) invoked.  isCoordinator=true; 
> isStopping=false; cancelInProgress=false
> - 2021-04-30 14:57:13,647 ERROR xecutors.LoggingUncaughtExceptionHandler:  92 
> - Uncaught exception in thread Thread[P2P message reader for 
> 10.99.199.28(CacheNotUsingSharedConfigurationIntegrationTest:29149):41001 
> shared unordered uid=1 local port=53039 remote port=64063,10,main]
> - org.apache.geode.InternalGemFireException: unable to retrieve underlying 
> byte buffer
> -  at 
> 

[jira] [Commented] (GEODE-9393) Apache Geode does not build/run on Java 16/17

2022-04-14 Thread Ernest Burghardt (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-9393?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17522410#comment-17522410
 ] 

Ernest Burghardt commented on GEODE-9393:
-

Changing this to "run on" Java 17... building on other than jdk 8 will have to 
be a separate effort

> Apache Geode does not build/run on Java 16/17
> -
>
> Key: GEODE-9393
> URL: https://issues.apache.org/jira/browse/GEODE-9393
> Project: Geode
>  Issue Type: Sub-task
>  Components: core
>Affects Versions: 1.13.2
>Reporter: John Blum
>Priority: Blocker
>  Labels: Java16, Java17
>
> Due to Java 16 tightened restrictions, Apache Geode fails to run on a Java 16 
> Runtime (JRE).
> Exceptions like the following are thrown:
> {code}
> - org.apache.geode.InternalGemFireException: unable to retrieve underlying 
> byte buffer
> -  at 
> org.apache.geode.internal.net.BufferPool.getPoolableBuffer(BufferPool.java:346)
> -  at 
> org.apache.geode.internal.net.BufferPool.releaseBuffer(BufferPool.java:310)
> -  at 
> org.apache.geode.internal.net.BufferPool.releaseSenderBuffer(BufferPool.java:213)
> -  at org.apache.geode.internal.tcp.MsgStreamer.release(MsgStreamer.java:100)
> -  at 
> org.apache.geode.internal.tcp.MsgStreamer.writeMessage(MsgStreamer.java:256)
> -  at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToMany(DirectChannel.java:306)
> -  at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToOne(DirectChannel.java:182)
> -  at 
> org.apache.geode.distributed.internal.direct.DirectChannel.send(DirectChannel.java:511)
> -  at 
> org.apache.geode.distributed.internal.DistributionImpl.directChannelSend(DistributionImpl.java:346)
> -  at 
> org.apache.geode.distributed.internal.DistributionImpl.send(DistributionImpl.java:291)
> -  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendViaMembershipManager(ClusterDistributionManager.java:2050)
> -  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1978)
> -  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendMessage(ClusterDistributionManager.java:2015)
> -  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.putOutgoing(ClusterDistributionManager.java:1083)
> -  at 
> org.apache.geode.distributed.internal.StartupMessage.process(StartupMessage.java:279)
> -  at 
> org.apache.geode.distributed.internal.DistributionMessage.scheduleAction(DistributionMessage.java:376)
> -  at 
> org.apache.geode.distributed.internal.DistributionMessage$1.run(DistributionMessage.java:441)
> -  at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
> -  at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
> -  at 
> org.apache.geode.distributed.internal.ClusterOperationExecutors.runUntilShutdown(ClusterOperationExecutors.java:441)
> -  at 
> org.apache.geode.distributed.internal.ClusterOperationExecutors.doWaitingThread(ClusterOperationExecutors.java:410)
> -  at 
> org.apache.geode.logging.internal.executors.LoggingThreadFactory.lambda$newThread$0(LoggingThreadFactory.java:119)
> -  at java.base/java.lang.Thread.run(Thread.java:831)
> - Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make 
> public java.lang.Object java.nio.DirectByteBuffer.attachment() accessible: 
> module java.base does not "opens java.nio" to unnamed module @40f9161a
> -  at 
> java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:357)
> -  at 
> java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
> -  at 
> java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199)
> -  at java.base/java.lang.reflect.Method.setAccessible(Method.java:193)
> -  at 
> org.apache.geode.internal.net.BufferPool.getPoolableBuffer(BufferPool.java:343)
> -  ... 22 common frames omitted
> - 2021-04-30 14:57:13,638  INFO ributed.internal.membership.gms.Services: 606 
> - received leave request from 
> 10.99.199.28(CacheNotUsingSharedConfigurationIntegrationTest:29149):41001 
> for 
> 10.99.199.28(CacheNotUsingSharedConfigurationIntegrationTest:29149):41001
> - 2021-04-30 14:57:13,640  INFO ributed.internal.membership.gms.Services: 617 
> - JoinLeave.processMessage(LeaveRequestMessage) invoked.  isCoordinator=true; 
> isStopping=false; cancelInProgress=false
> - 2021-04-30 14:57:13,647 ERROR xecutors.LoggingUncaughtExceptionHandler:  92 
> - Uncaught exception in thread Thread[P2P message reader for 
> 10.99.199.28(CacheNotUsingSharedConfigurationIntegrationTest:29149):41001 
> shared unordered uid=1 local port=53039 remote port=64063,10,main]
> - org.apache.geode.InternalGemFireException: unable to 

[jira] [Updated] (GEODE-10005) Upgrade to Eclipse Jetty 11.0.x

2022-04-14 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-10005?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-10005:
-
Parent: (was: GEODE-10003)
Issue Type: Improvement  (was: Sub-task)

> Upgrade to Eclipse Jetty 11.0.x
> ---
>
> Key: GEODE-10005
> URL: https://issues.apache.org/jira/browse/GEODE-10005
> Project: Geode
>  Issue Type: Improvement
>Reporter: John Blum
>Priority: Blocker
>
> In order to release _Spring Boot for Apache Geode_ (SBDG) {{2.0}}, based on 
> _Spring Boot_ {{3.0}}, the transitive dependency must minimally match _Spring 
> Boot's_ minimum [(major.mionr) 
> version|https://github.com/spring-projects/spring-boot/blob/v3.0.0-M1/spring-boot-project/spring-boot-dependencies/build.gradle#L645-L651]
>  requirement for *Eclipse Jetty*.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Updated] (GEODE-10003) Support JDK 17 on Geode

2022-04-05 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-10003?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-10003:
-
Labels: Java17 jdk17  (was: jdk17)

> Support JDK 17 on Geode
> ---
>
> Key: GEODE-10003
> URL: https://issues.apache.org/jira/browse/GEODE-10003
> Project: Geode
>  Issue Type: Improvement
>Reporter: Owen Nichols
>Priority: Major
>  Labels: Java17, jdk17
>
> JDK 17 Schedule: [https://openjdk.java.net/projects/jdk/17/]
> The first ticket to suggest going beyond JDK8 was GEODE-3.  Now that JDK17 is 
> LTS, and Spring and other users are embracing JDK17, Geode should at least 
> run (if not compile) on JDK17.
> This may take a lot of work, possibly requiring a new major release.  Please 
> add subtasks to this ticket as necessary.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Updated] (GEODE-10181) GFSH needs to support JDK17 GCs

2022-03-30 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-10181?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-10181:
-
Description: 
Geode will be supporting JDK 17 and Gfsh needs to support GC available;

ZGC by default

  was:Geode will be supporting JDK 17 and Gfsh needs to support GC available; 
i.e. ZGC


> GFSH needs to support JDK17 GCs
> ---
>
> Key: GEODE-10181
> URL: https://issues.apache.org/jira/browse/GEODE-10181
> Project: Geode
>  Issue Type: Improvement
>  Components: gfsh
>Reporter: Ernest Burghardt
>Priority: Major
>  Labels: Java17
>
> Geode will be supporting JDK 17 and Gfsh needs to support GC available;
> ZGC by default



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Updated] (GEODE-10181) GFSH needs to support JDK17 GCs

2022-03-30 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-10181?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-10181:
-
Summary: GFSH needs to support JDK17 GCs  (was: GFSH needs to support GCs)

> GFSH needs to support JDK17 GCs
> ---
>
> Key: GEODE-10181
> URL: https://issues.apache.org/jira/browse/GEODE-10181
> Project: Geode
>  Issue Type: Improvement
>  Components: gfsh
>Reporter: Ernest Burghardt
>Priority: Major
>  Labels: Java17
>
> Geode will be supporting JDK 17 and Gfsh needs to support GC available; i.e. 
> ZGC



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Updated] (GEODE-10181) GFSH needs to support GCs

2022-03-28 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-10181?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-10181:
-
Labels: Java17  (was: )

> GFSH needs to support GCs
> -
>
> Key: GEODE-10181
> URL: https://issues.apache.org/jira/browse/GEODE-10181
> Project: Geode
>  Issue Type: Improvement
>  Components: gfsh
>Reporter: Ernest Burghardt
>Priority: Major
>  Labels: Java17
>
> Geode will be supporting JDK 17 and Gfsh needs to support GC available; i.e. 
> ZGC



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Created] (GEODE-10181) GFSH needs to support GCs

2022-03-28 Thread Ernest Burghardt (Jira)
Ernest Burghardt created GEODE-10181:


 Summary: GFSH needs to support GCs
 Key: GEODE-10181
 URL: https://issues.apache.org/jira/browse/GEODE-10181
 Project: Geode
  Issue Type: Improvement
  Components: gfsh
Reporter: Ernest Burghardt


Geode will be supporting JDK 17 and Gfsh needs to support GC available; i.e. ZGC



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-2833) IPdxSerializable objects don't deserialize after custom PdxSerializer is registered.

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-2833?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-2833.
-
Resolution: Feedback Received

> IPdxSerializable objects don't deserialize after custom PdxSerializer is 
> registered.
> 
>
> Key: GEODE-2833
> URL: https://issues.apache.org/jira/browse/GEODE-2833
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Jacob Barrett
>Priority: Major
>
> Registing a {IPdxSerializer} disables deserialization of {IPdxSerializable} 
> classes.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-2833) IPdxSerializable objects don't deserialize after custom PdxSerializer is registered.

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-2833?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-2833.
---

> IPdxSerializable objects don't deserialize after custom PdxSerializer is 
> registered.
> 
>
> Key: GEODE-2833
> URL: https://issues.apache.org/jira/browse/GEODE-2833
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Jacob Barrett
>Priority: Major
>
> Registing a {IPdxSerializer} disables deserialization of {IPdxSerializable} 
> classes.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-3137) Replace all time values internally with std::chrono types

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-3137?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-3137.
-
Resolution: Duplicate

> Replace all time values internally with std::chrono types
> -
>
> Key: GEODE-3137
> URL: https://issues.apache.org/jira/browse/GEODE-3137
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Jacob Barrett
>Priority: Major
>
> Remove ambiguity of time values by using 
> [{{std::chrono}}|http://en.cppreference.com/w/cpp/chrono] types used 
> internally. 



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-3137) Replace all time values internally with std::chrono types

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-3137?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-3137.
---

> Replace all time values internally with std::chrono types
> -
>
> Key: GEODE-3137
> URL: https://issues.apache.org/jira/browse/GEODE-3137
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Jacob Barrett
>Priority: Major
>
> Remove ambiguity of time values by using 
> [{{std::chrono}}|http://en.cppreference.com/w/cpp/chrono] types used 
> internally. 



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-3432) Cleanup Find NativeClient CMake modules

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-3432?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-3432.
-
Resolution: Not A Problem

> Cleanup Find NativeClient CMake modules
> ---
>
> Key: GEODE-3432
> URL: https://issues.apache.org/jira/browse/GEODE-3432
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: Jacob Barrett
>Priority: Major
>
> There are multiple copies. One appears to just be a copy of CMake's FindJava. 
> Clean these up and put in appropriate locations.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-3432) Cleanup Find NativeClient CMake modules

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-3432?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-3432.
---

> Cleanup Find NativeClient CMake modules
> ---
>
> Key: GEODE-3432
> URL: https://issues.apache.org/jira/browse/GEODE-3432
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: Jacob Barrett
>Priority: Major
>
> There are multiple copies. One appears to just be a copy of CMake's FindJava. 
> Clean these up and put in appropriate locations.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-3585) Cleanup public headers

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-3585?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-3585.
-
Resolution: Won't Fix

> Cleanup public headers
> --
>
> Key: GEODE-3585
> URL: https://issues.apache.org/jira/browse/GEODE-3585
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: Jacob Barrett
>Assignee: Jacob Barrett
>Priority: Major
>
> Cleanup public headers by:
> Properly ordering copyright, guard, includes, etc.
> Removing unused headers.
> Correct {{using}} statements to avoid leaking types.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-3585) Cleanup public headers

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-3585?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-3585.
---

> Cleanup public headers
> --
>
> Key: GEODE-3585
> URL: https://issues.apache.org/jira/browse/GEODE-3585
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: Jacob Barrett
>Assignee: Jacob Barrett
>Priority: Major
>
> Cleanup public headers by:
> Properly ordering copyright, guard, includes, etc.
> Removing unused headers.
> Correct {{using}} statements to avoid leaking types.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-3972) Disambiguate the Region interface template resolutions

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-3972?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-3972.
---

> Disambiguate the Region interface template resolutions
> --
>
> Key: GEODE-3972
> URL: https://issues.apache.org/jira/browse/GEODE-3972
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: David Kimura
>Priority: Major
>
> Region interface has unintuitive template type resolution.  For example: 
> {{Region::put}} has following signatures:
> {noformat}
> virtual void put(const CacheableKeyPtr& key, const CacheablePtr& value, 
> const SerializablePtr& aCallbackArgument = nullptr) = 0;
> template 
> inline void put(const KEYTYPE& key, const VALUETYPE& value, const 
> SerializablePtr& arg = nullptr) {
>   put(createKey(key), createValue(value), arg);
> }
>   
> template 
> inline void put(const KEYTYPE& key, const CacheablePtr& value, const 
> SerializablePtr& arg = nullptr) {
>   put(createKey(key), value, arg);
> }
>   
> template 
> inline void put(const CacheableKeyPtr& key, const VALUETYPE& value, const 
> SerializablePtr& arg = nullptr) {
>   put(key, createValue(value), arg);
> }
> {noformat}
> If user calls {{region.put(a_key, CacheableString::create("a_value"), ...)}} 
> they might expect it to call non-templated put since CacheableString derives 
> from Cacheable.  Instead it seems to call the templated method.  Ideally, we 
> should probably have our API match non-templated method signature in this 
> particular case.
> One solution may be to use type traits.  So, template signature on put 
> interface may look something like:
> {noformat}
> template 
> inline void put(
>   const typename 
> std::enable_if::value>::type& key = 0,
>   const typename 
> std::enable_if::value>::type& value = 0,
>   const SerializablePtr& arg = nullptr) {
> {noformat}
> And then implement {{is_integral_or_char_ptr}}.  We should then evaluate 
> whether {{createValue}} and {{createKey}} templates are needed any longer.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-3972) Disambiguate the Region interface template resolutions

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-3972?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-3972.
-
Resolution: Abandoned

> Disambiguate the Region interface template resolutions
> --
>
> Key: GEODE-3972
> URL: https://issues.apache.org/jira/browse/GEODE-3972
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: David Kimura
>Priority: Major
>
> Region interface has unintuitive template type resolution.  For example: 
> {{Region::put}} has following signatures:
> {noformat}
> virtual void put(const CacheableKeyPtr& key, const CacheablePtr& value, 
> const SerializablePtr& aCallbackArgument = nullptr) = 0;
> template 
> inline void put(const KEYTYPE& key, const VALUETYPE& value, const 
> SerializablePtr& arg = nullptr) {
>   put(createKey(key), createValue(value), arg);
> }
>   
> template 
> inline void put(const KEYTYPE& key, const CacheablePtr& value, const 
> SerializablePtr& arg = nullptr) {
>   put(createKey(key), value, arg);
> }
>   
> template 
> inline void put(const CacheableKeyPtr& key, const VALUETYPE& value, const 
> SerializablePtr& arg = nullptr) {
>   put(key, createValue(value), arg);
> }
> {noformat}
> If user calls {{region.put(a_key, CacheableString::create("a_value"), ...)}} 
> they might expect it to call non-templated put since CacheableString derives 
> from Cacheable.  Instead it seems to call the templated method.  Ideally, we 
> should probably have our API match non-templated method signature in this 
> particular case.
> One solution may be to use type traits.  So, template signature on put 
> interface may look something like:
> {noformat}
> template 
> inline void put(
>   const typename 
> std::enable_if::value>::type& key = 0,
>   const typename 
> std::enable_if::value>::type& value = 0,
>   const SerializablePtr& arg = nullptr) {
> {noformat}
> And then implement {{is_integral_or_char_ptr}}.  We should then evaluate 
> whether {{createValue}} and {{createKey}} templates are needed any longer.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-4600) Config XML parser should enforce schema

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-4600?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-4600.
---

> Config XML parser should enforce schema
> ---
>
> Key: GEODE-4600
> URL: https://issues.apache.org/jira/browse/GEODE-4600
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Addison
>Priority: Major
>
> The config xml parser does not validate the XML document against the old DTDs 
> or the new XSD. Many of the config files we have are not valid to the DTD or 
> XSD. Many mistakes in configuration could be caught in the parser by 
> validation alone.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-4600) Config XML parser should enforce schema

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-4600?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-4600.
-
Resolution: Won't Fix

> Config XML parser should enforce schema
> ---
>
> Key: GEODE-4600
> URL: https://issues.apache.org/jira/browse/GEODE-4600
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Addison
>Priority: Major
>
> The config xml parser does not validate the XML document against the old DTDs 
> or the new XSD. Many of the config files we have are not valid to the DTD or 
> XSD. Many mistakes in configuration could be caught in the parser by 
> validation alone.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-4602) Refactor TcrMessage - unfriend TcrMessageHelper and TcrMessage

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-4602?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-4602.
-
Resolution: Won't Fix

> Refactor TcrMessage - unfriend TcrMessageHelper and TcrMessage
> --
>
> Key: GEODE-4602
> URL: https://issues.apache.org/jira/browse/GEODE-4602
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Addison
>Priority: Major
>
> TcrMessageHelper breaks encapsulation of TcrMessage so that ThinClientRegion 
> can process messages. For example, look at ChunkedQueryResponse::handleChunk.
> Evaluate ways to decouple these classes. Consider making a non-friend 
> processor class instead. Make more stories as appropriate.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-4602) Refactor TcrMessage - unfriend TcrMessageHelper and TcrMessage

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-4602?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-4602.
---

> Refactor TcrMessage - unfriend TcrMessageHelper and TcrMessage
> --
>
> Key: GEODE-4602
> URL: https://issues.apache.org/jira/browse/GEODE-4602
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Addison
>Priority: Major
>
> TcrMessageHelper breaks encapsulation of TcrMessage so that ThinClientRegion 
> can process messages. For example, look at ChunkedQueryResponse::handleChunk.
> Evaluate ways to decouple these classes. Consider making a non-friend 
> processor class instead. Make more stories as appropriate.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-4601) Refactor TcrMessage - resolve accessor encapsulation

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-4601?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-4601.
-
Resolution: Won't Fix

> Refactor TcrMessage - resolve accessor encapsulation
> 
>
> Key: GEODE-4601
> URL: https://issues.apache.org/jira/browse/GEODE-4601
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Addison
>Priority: Major
>
> {{TcrMessage}} has accessor {{setMessageType()}} which should be removed from 
> the base class.  It is used only on reply messages, _not_ request messages.
> Here are some steps we can take:
> # Move it into the {{TcrMessageReply}} class.
> # Remove the accessor entirely by altering internal APIs, e.g. 
> {{TcrMessageHelper::readChunkPartHeader()}}, to return a message object 
> rather than taking a reference to a message and then modifying the type.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-4601) Refactor TcrMessage - resolve accessor encapsulation

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-4601?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-4601.
---

> Refactor TcrMessage - resolve accessor encapsulation
> 
>
> Key: GEODE-4601
> URL: https://issues.apache.org/jira/browse/GEODE-4601
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Addison
>Priority: Major
>
> {{TcrMessage}} has accessor {{setMessageType()}} which should be removed from 
> the base class.  It is used only on reply messages, _not_ request messages.
> Here are some steps we can take:
> # Move it into the {{TcrMessageReply}} class.
> # Remove the accessor entirely by altering internal APIs, e.g. 
> {{TcrMessageHelper::readChunkPartHeader()}}, to return a message object 
> rather than taking a reference to a message and then modifying the type.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-4603) Refactor TcrMessage - break up processChunk

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-4603?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-4603.
---

> Refactor TcrMessage - break up processChunk
> ---
>
> Key: GEODE-4603
> URL: https://issues.apache.org/jira/browse/GEODE-4603
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: Addison
>Priority: Major
>
> TcrMessage::processChunk contains a giant switch statement which processes 
> the message based on the message type.
> Consider separating the process logic for each reply into a unique reply 
> class for each reply type. If we create unique reply classes for each reply 
> then the logic can be broken out among the appropriate reply class rather 
> than a giant proccessChunk which knows how to process every message.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-4603) Refactor TcrMessage - break up processChunk

2022-02-24 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-4603?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-4603.
-
Resolution: Won't Fix

> Refactor TcrMessage - break up processChunk
> ---
>
> Key: GEODE-4603
> URL: https://issues.apache.org/jira/browse/GEODE-4603
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: Addison
>Priority: Major
>
> TcrMessage::processChunk contains a giant switch statement which processes 
> the message based on the message type.
> Consider separating the process logic for each reply into a unique reply 
> class for each reply type. If we create unique reply classes for each reply 
> then the logic can be broken out among the appropriate reply class rather 
> than a giant proccessChunk which knows how to process every message.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Commented] (GEODE-5743) Refactor PdxType logic

2022-02-24 Thread Ernest Burghardt (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-5743?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17497724#comment-17497724
 ] 

Ernest Burghardt commented on GEODE-5743:
-

[~mmartell] haven't you already done this?

> Refactor PdxType logic
> --
>
> Key: GEODE-5743
> URL: https://issues.apache.org/jira/browse/GEODE-5743
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Martell
>Priority: Major
>
>  It isn't publicly facing so I can be tackled after the next release but It 
> should be refactored to make separate between C++ and .NET clean. This looks 
> like the only faked type in the registry now to handle C++ and .NET override 
> behavior. The rest have already been replaced with {{*Handler}} interfaces.
> This should be refactored out. It is not really a primitive type, it just 
> pretends to be one. Give it the same treatment we did for {{PdxTypeHandler}} 
> and {{DataSerializableHandler}}. In fact rename {{PdxTypeHander}} to 
> {{PdxSerializableHandler}}, the current name is confusing with {{PdxType}}, 
> which is the meta-data about PDX objects. Then implement this {{PdxType}} 
> logic as {{PdxTypeHandler}}.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Commented] (GEODE-9433) CI Failure in GarbageCollectCache.VerifyNoLeakedThreads integration test

2022-02-24 Thread Ernest Burghardt (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-9433?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17497715#comment-17497715
 ] 

Ernest Burghardt commented on GEODE-9433:
-

this was a failure on a WIP pipeline, which has been abandoned.

> CI Failure in GarbageCollectCache.VerifyNoLeakedThreads integration test
> 
>
> Key: GEODE-9433
> URL: https://issues.apache.org/jira/browse/GEODE-9433
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Kamilla Aslami
>Priority: Major
>
>  
> {code:java}
> Apache.Geode.Client.IntegrationTests.GarbageCollectCache.VerifyNoLeakedThreads
>  ***Failed   78.00 sec
>   Discovering: Apache.Geode.IntegrationTests2
>   Discovered:  Apache.Geode.IntegrationTests2
>   Starting:Apache.Geode.IntegrationTests2
> 
> Apache.Geode.Client.IntegrationTests.GarbageCollectCache.VerifyNoLeakedThreads
>  [FAIL]
>   ncThreadsBefore = 33, ncThreadsAfter = 25
>   Expected: False
>   Actual:   True
>   Stack Trace:
> 
> C:\Users\build\source\clicache\integration-test2\GarbageCollectCache.cs(89,0):
>  at 
> Apache.Geode.Client.IntegrationTests.GarbageCollectCache.VerifyNoLeakedThreads()
> {code}
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Assigned] (GEODE-9639) Make native client compatible with C++20

2022-02-22 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-9639?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt reassigned GEODE-9639:
---

Assignee: Matthew Reddington

> Make native client compatible with C++20
> 
>
> Key: GEODE-9639
> URL: https://issues.apache.org/jira/browse/GEODE-9639
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Matthew Reddington
>Assignee: Matthew Reddington
>Priority: Major
>  Labels: pull-request-available
>
> There are standard library components that were removed in C++20, making our 
> library incompatible. Luckily, our use of deleted components are minimal and 
> replaceable without breaking API backward compatibility, but it will disrupt 
> ABI compatibility.
>  
> The outcome needs to be tested against MSVC2017/v141 and MSVC2019/v142, 
> including examples.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-6005) Investigate DataOutput's "big buffer"

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-6005?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-6005.
---

> Investigate DataOutput's "big buffer"
> -
>
> Key: GEODE-6005
> URL: https://issues.apache.org/jira/browse/GEODE-6005
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: Jacob Barrett
>Priority: Major
>
> There is a process global lock for protecting something called "big buffer" 
> but there is no big buffer. It looks like it may just restrict other threads 
> from creating big buffers while another thread has a big buffer. Let's 
> investigate what is really going on here and understand why and if we need to 
> do this.
>  
> I think a better solution to resource management would be a bounded buffer 
> pool where DataOutput/Input would checkout buffers to some user configurable 
> limit before blocking.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-6005) Investigate DataOutput's "big buffer"

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-6005?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-6005.
-
Resolution: Not A Problem

> Investigate DataOutput's "big buffer"
> -
>
> Key: GEODE-6005
> URL: https://issues.apache.org/jira/browse/GEODE-6005
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: Jacob Barrett
>Priority: Major
>
> There is a process global lock for protecting something called "big buffer" 
> but there is no big buffer. It looks like it may just restrict other threads 
> from creating big buffers while another thread has a big buffer. Let's 
> investigate what is really going on here and understand why and if we need to 
> do this.
>  
> I think a better solution to resource management would be a bounded buffer 
> pool where DataOutput/Input would checkout buffers to some user configurable 
> limit before blocking.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-6006) Evaluate ThinClientPoolDM's mutex usage around m_endpoints

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-6006?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-6006.
---

> Evaluate ThinClientPoolDM's mutex usage around m_endpoints
> --
>
> Key: GEODE-6006
> URL: https://issues.apache.org/jira/browse/GEODE-6006
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: Jacob Barrett
>Priority: Major
>
> In some places {{m_endpoints}} is protected by the mutex in the ACE map, in 
> other places by {{m_endpointsLock}} mutex.
>  
> ACE map does not lock iterators so any iterator calls should be locked 
> externally.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-6006) Evaluate ThinClientPoolDM's mutex usage around m_endpoints

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-6006?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-6006.
-
Resolution: Not A Problem

> Evaluate ThinClientPoolDM's mutex usage around m_endpoints
> --
>
> Key: GEODE-6006
> URL: https://issues.apache.org/jira/browse/GEODE-6006
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: Jacob Barrett
>Priority: Major
>
> In some places {{m_endpoints}} is protected by the mutex in the ACE map, in 
> other places by {{m_endpointsLock}} mutex.
>  
> ACE map does not lock iterators so any iterator calls should be locked 
> externally.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-6017) Investigate lack of synchronization in MapSegment::isTombstone

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-6017?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-6017.
-
Resolution: Not A Problem

> Investigate lack of synchronization in MapSegment::isTombstone
> --
>
> Key: GEODE-6017
> URL: https://issues.apache.org/jira/browse/GEODE-6017
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: Jacob Barrett
>Priority: Major
>
> Unlike all other accessors to MapSegment, this method does not take any 
> locks. This does not seem correct but looks intentional. Let's try to 
> understand why and make any necessary corrections.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-6017) Investigate lack of synchronization in MapSegment::isTombstone

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-6017?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-6017.
---

> Investigate lack of synchronization in MapSegment::isTombstone
> --
>
> Key: GEODE-6017
> URL: https://issues.apache.org/jira/browse/GEODE-6017
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: Jacob Barrett
>Priority: Major
>
> Unlike all other accessors to MapSegment, this method does not take any 
> locks. This does not seem correct but looks intentional. Let's try to 
> understand why and make any necessary corrections.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-6500) apache::geode::client::InterestResultPolicy only works because we get lucky

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-6500?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-6500.
---

> apache::geode::client::InterestResultPolicy only works because we get lucky
> ---
>
> Key: GEODE-6500
> URL: https://issues.apache.org/jira/browse/GEODE-6500
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Blake Bender
>Priority: Major
>
> Here's the code in InterestResultPolicy.hpp:
> {code:java}
> namespace apache {
> namespace geode {
> namespace client {
> /**
>  * @class InterestResultPolicy InterestResultPolicy.hpp
>  * Policy class for interest result.
>  */
> class APACHE_GEODE_EXPORT InterestResultPolicy {
>   // public static methods
>  public:
>   static char nextOrdinal;
>   static InterestResultPolicy NONE;
>   static InterestResultPolicy KEYS;
>   static InterestResultPolicy KEYS_VALUES;
>   char ordinal;
>   char getOrdinal() { return ordinal; }
>  private:
>   InterestResultPolicy() { ordinal = nextOrdinal++; }
> };{code}
> All the statics are initialized in InterestResultPolicy.cpp, with nextOrdinal 
> set to 0.  Thus, most of the time, the InterestResultPolicy instances NONE, 
> KEYS, and KEYS_VALUES are assigned 1, 2, and 3, respectively.  The Geode wire 
> protocol most likely depends on these being fixed values, but the code as 
> written relies on initialization order to get the correct values.  
> Initialization order is *undefined behavior*, and compiler dependent.  These 
> need to be explicitly initialized, NONE KEYS and KEYS_VALUES should be 
> members of an enum class rather than object instances, etc.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-6500) apache::geode::client::InterestResultPolicy only works because we get lucky

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-6500?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-6500.
-
Resolution: Fixed

> apache::geode::client::InterestResultPolicy only works because we get lucky
> ---
>
> Key: GEODE-6500
> URL: https://issues.apache.org/jira/browse/GEODE-6500
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Blake Bender
>Priority: Major
>
> Here's the code in InterestResultPolicy.hpp:
> {code:java}
> namespace apache {
> namespace geode {
> namespace client {
> /**
>  * @class InterestResultPolicy InterestResultPolicy.hpp
>  * Policy class for interest result.
>  */
> class APACHE_GEODE_EXPORT InterestResultPolicy {
>   // public static methods
>  public:
>   static char nextOrdinal;
>   static InterestResultPolicy NONE;
>   static InterestResultPolicy KEYS;
>   static InterestResultPolicy KEYS_VALUES;
>   char ordinal;
>   char getOrdinal() { return ordinal; }
>  private:
>   InterestResultPolicy() { ordinal = nextOrdinal++; }
> };{code}
> All the statics are initialized in InterestResultPolicy.cpp, with nextOrdinal 
> set to 0.  Thus, most of the time, the InterestResultPolicy instances NONE, 
> KEYS, and KEYS_VALUES are assigned 1, 2, and 3, respectively.  The Geode wire 
> protocol most likely depends on these being fixed values, but the code as 
> written relies on initialization order to get the correct values.  
> Initialization order is *undefined behavior*, and compiler dependent.  These 
> need to be explicitly initialized, NONE KEYS and KEYS_VALUES should be 
> members of an enum class rather than object instances, etc.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-7190) Native Client should use latest protocol ordinal

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-7190?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-7190.
-
Resolution: Later

> Native Client should use latest protocol ordinal
> 
>
> Key: GEODE-7190
> URL: https://issues.apache.org/jira/browse/GEODE-7190
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Oleske
>Priority: Major
>
> **We should** update the protocol ordinal version
> **Before we** make more communication changes
> **Because** working on an old version makes it difficult to communicate with 
> the server.
> **Notes**:  The current ordinal is 45, we should move to Geode 1.9.x version, 
> which is 100



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-7190) Native Client should use latest protocol ordinal

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-7190?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-7190.
---

> Native Client should use latest protocol ordinal
> 
>
> Key: GEODE-7190
> URL: https://issues.apache.org/jira/browse/GEODE-7190
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Oleske
>Priority: Major
>
> **We should** update the protocol ordinal version
> **Before we** make more communication changes
> **Because** working on an old version makes it difficult to communicate with 
> the server.
> **Notes**:  The current ordinal is 45, we should move to Geode 1.9.x version, 
> which is 100



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-7236) Fix Clang 'defaulted-function-deleted' and 'c++2a-compat' warnings

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-7236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-7236.
-
Resolution: Won't Fix

> Fix Clang 'defaulted-function-deleted' and 'c++2a-compat' warnings
> --
>
> Key: GEODE-7236
> URL: https://issues.apache.org/jira/browse/GEODE-7236
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Blake Bender
>Priority: Major
>
> Repro steps: 
>  * Sync up to geode native `develop` branch on a Mac with latest Clang `Apple 
> clang version 11.0.0 (clang-1100.0.33.8)`
>  * Check top-level CMakeLists.txt and make sure these warnings are enabled, 
> i.e. not turned off in `target_compile_options(_WarningsAsError INTERFACE`
>  * Configure and build Geode Native
> Expected Result:
>  * Geode Native builds to completion
> Actual Result:
>  * Clang warns about these things, and the build fails due to WarningsAsError.
> These warnings have been disabled (GEODE-7325) to get the build back off the 
> floor, but we need to provide the actual code fix and re-enable the warnings.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-7236) Fix Clang 'defaulted-function-deleted' and 'c++2a-compat' warnings

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-7236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-7236.
---

> Fix Clang 'defaulted-function-deleted' and 'c++2a-compat' warnings
> --
>
> Key: GEODE-7236
> URL: https://issues.apache.org/jira/browse/GEODE-7236
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Blake Bender
>Priority: Major
>
> Repro steps: 
>  * Sync up to geode native `develop` branch on a Mac with latest Clang `Apple 
> clang version 11.0.0 (clang-1100.0.33.8)`
>  * Check top-level CMakeLists.txt and make sure these warnings are enabled, 
> i.e. not turned off in `target_compile_options(_WarningsAsError INTERFACE`
>  * Configure and build Geode Native
> Expected Result:
>  * Geode Native builds to completion
> Actual Result:
>  * Clang warns about these things, and the build fails due to WarningsAsError.
> These warnings have been disabled (GEODE-7325) to get the build back off the 
> floor, but we need to provide the actual code fix and re-enable the warnings.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-7302) security-client-kspath should not be a property a user can set

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-7302?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-7302.
-
Resolution: Not A Problem

> security-client-kspath should not be a property a user can set
> --
>
> Key: GEODE-7302
> URL: https://issues.apache.org/jira/browse/GEODE-7302
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: Michael Oleske
>Priority: Major
>
> h3. Why
> With the usage of `ssl-truststore`, users should not use 
> `security-client-kspath`.  `security-client-kspath` is not actually used by 
> our code.
> *As a C++ developer*
> *I want* to not have properties that don't do anything
> *So that* I don't get confused
> h3. Acceptance Criteria
> *Given* that I have a C++ application
> *When* I set `security-client-kspath`
> *Then* I get an error saying that's not a property



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-7302) security-client-kspath should not be a property a user can set

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-7302?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-7302.
---

> security-client-kspath should not be a property a user can set
> --
>
> Key: GEODE-7302
> URL: https://issues.apache.org/jira/browse/GEODE-7302
> Project: Geode
>  Issue Type: Task
>  Components: native client
>Reporter: Michael Oleske
>Priority: Major
>
> h3. Why
> With the usage of `ssl-truststore`, users should not use 
> `security-client-kspath`.  `security-client-kspath` is not actually used by 
> our code.
> *As a C++ developer*
> *I want* to not have properties that don't do anything
> *So that* I don't get confused
> h3. Acceptance Criteria
> *Given* that I have a C++ application
> *When* I set `security-client-kspath`
> *Then* I get an error saying that's not a property



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-7584) Refactor PDX handling in ThinClientPoolDM

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-7584?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-7584.
-
Resolution: Won't Fix

> Refactor PDX handling in ThinClientPoolDM
> -
>
> Key: GEODE-7584
> URL: https://issues.apache.org/jira/browse/GEODE-7584
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Blake Bender
>Priority: Major
>  Labels: pull-request-available
>  Time Spent: 1h 40m
>  Remaining Estimate: 0h
>
> As a native client developer, I would very much like to fully understand 
> what's going on in the PDX serialization/deserialization code.  
> Unfortunately, much of this code is opaque and full of side-effect.  For 
> instance, ThinClientPoolDM::GetPDXIdForType first gets the type, which 
> registers the type on the specific server the pool is talking to, then it 
> broadcasts the type information to any/all other existing pools in the 
> client.  Cleaning up some of this stuff so you can see the discrete steps the 
> code is executing will go a long way towards making it readable.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-7584) Refactor PDX handling in ThinClientPoolDM

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-7584?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-7584.
---

> Refactor PDX handling in ThinClientPoolDM
> -
>
> Key: GEODE-7584
> URL: https://issues.apache.org/jira/browse/GEODE-7584
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Blake Bender
>Priority: Major
>  Labels: pull-request-available
>  Time Spent: 1h 40m
>  Remaining Estimate: 0h
>
> As a native client developer, I would very much like to fully understand 
> what's going on in the PDX serialization/deserialization code.  
> Unfortunately, much of this code is opaque and full of side-effect.  For 
> instance, ThinClientPoolDM::GetPDXIdForType first gets the type, which 
> registers the type on the specific server the pool is talking to, then it 
> broadcasts the type information to any/all other existing pools in the 
> client.  Cleaning up some of this stuff so you can see the discrete steps the 
> code is executing will go a long way towards making it readable.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-7697) Add Dependency on OpenSSL 1.1 to Native Client

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-7697?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-7697.
---

> Add Dependency on OpenSSL 1.1 to Native Client
> --
>
> Key: GEODE-7697
> URL: https://issues.apache.org/jira/browse/GEODE-7697
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Michael Martell
>Priority: Major
>  Labels: pull-request-available
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Native client depends on OpenSSL 1.1 to avoid issues with multithreading. 
> This ticket is to enforce this dependency via the cmake find_package command.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-7697) Add Dependency on OpenSSL 1.1 to Native Client

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-7697?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-7697.
-
Resolution: Not A Problem

> Add Dependency on OpenSSL 1.1 to Native Client
> --
>
> Key: GEODE-7697
> URL: https://issues.apache.org/jira/browse/GEODE-7697
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Michael Martell
>Priority: Major
>  Labels: pull-request-available
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Native client depends on OpenSSL 1.1 to avoid issues with multithreading. 
> This ticket is to enforce this dependency via the cmake find_package command.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Updated] (GEODE-7882) Add a new .NET Query test using ReflectionBasedAutoSerializer

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-7882?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-7882:

Parent: GEODE-7952
Issue Type: Sub-task  (was: Test)

> Add a new .NET Query test using ReflectionBasedAutoSerializer
> -
>
> Key: GEODE-7882
> URL: https://issues.apache.org/jira/browse/GEODE-7882
> Project: Geode
>  Issue Type: Sub-task
>  Components: native client
>Reporter: Michael Martell
>Priority: Major
>
> The existing query test for this (ThinClientPdxTest2 in the old framework) 
> didn't actually do any Asserts. This was actually a useless test.
> We need to write a proper query test for autoserialized data of .NET classes. 
> The test should be added to the new AutoSerializationTests in the new 
> integration-test2 framework.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Updated] (GEODE-8121) Add Support for Property Files and Hostname to Integration Test Framework

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8121?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-8121:

Issue Type: Test  (was: Improvement)

> Add Support for Property Files and Hostname to Integration Test Framework
> -
>
> Key: GEODE-8121
> URL: https://issues.apache.org/jira/browse/GEODE-8121
> Project: Geode
>  Issue Type: Test
>  Components: native client
>Reporter: Michael Martell
>Priority: Major
>
> Need to add support for the following:
>  * --hostname-for-clients
>  * --properties-file
>  * --security-properties-file



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Updated] (GEODE-7961) Add Support configure pdx commands in the new .NET test framework

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-7961?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-7961:

Issue Type: Test  (was: Improvement)

> Add Support configure pdx commands in the new .NET test framework
> -
>
> Key: GEODE-7961
> URL: https://issues.apache.org/jira/browse/GEODE-7961
> Project: Geode
>  Issue Type: Test
>  Components: native client
>Reporter: Michael Martell
>Priority: Major
>
> The current .NET Xunit test framework starts and stops the geode cluster 
> programmatically via gfsh commands. It supports a wide range of commands, but 
> it doesn't not provide a way to configure servers with pdx.
> This ticket calls for a way to insert "configure pdx ..." commands after the 
> start locator commands and before any start server commands



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8156) Write basic SNI test for C# (clicache)

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8156?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8156.
-
Resolution: Duplicate

> Write basic SNI test for C# (clicache)
> --
>
> Key: GEODE-8156
> URL: https://issues.apache.org/jira/browse/GEODE-8156
> Project: Geode
>  Issue Type: New Feature
>  Components: native client
>Reporter: Blake Bender
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8156) Write basic SNI test for C# (clicache)

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8156?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8156.
---

> Write basic SNI test for C# (clicache)
> --
>
> Key: GEODE-8156
> URL: https://issues.apache.org/jira/browse/GEODE-8156
> Project: Geode
>  Issue Type: New Feature
>  Components: native client
>Reporter: Blake Bender
>Priority: Major
>




--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Updated] (GEODE-8208) Remove global initLib/closeLib methods from CppCacheLibrary

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8208?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-8208:

Parent: GEODE-2484
Issue Type: Sub-task  (was: Improvement)

> Remove global initLib/closeLib methods from CppCacheLibrary
> ---
>
> Key: GEODE-8208
> URL: https://issues.apache.org/jira/browse/GEODE-8208
> Project: Geode
>  Issue Type: Sub-task
>  Components: native client
>Reporter: Blake Bender
>Priority: Major
>
> closeLib contains no code, just remove it.  initLib is only one line of code, 
> a call to ACE::init().  If there is to be any global initialization code for 
> geode-native, and it currently doesn't appear that there is, it needs to be 
> exposed in the public API and called explicitly by the application, where 
> object lifetimes etc are known.  Since CppCacheLibrary isn't public, and once 
> we remove ACE (GEODE-2484) there will literally be no code in either of these 
> methods, we should delete them and move on.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8468) Review use of switch statements with enums

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8468?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8468.
---

> Review use of switch statements with enums
> --
>
> Key: GEODE-8468
> URL: https://issues.apache.org/jira/browse/GEODE-8468
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Oleske
>Priority: Major
>  Labels: GoodForNewContributors
>
> We should check our usage of switch statements with enums
> Before we add more enums
> Because readability is important
> Notes:  While working on GEODE-8340, it was determined that some of the 
> places where a switch statement over enums was used were cases where a switch 
> statement was not the best control structure.  The goal here is prevent a 
> long unwieldy list of switch statements.  There are a lot of places to 
> review, so it will probably be easiest to do this over several PRs, which may 
> require several stories.  The places listed below does not mean all of them 
> need to be fixed, but they should all be reviewed for improvement.  For 
> further context, check out the comments on the [pr for 
> 8340|https://github.com/apache/geode-native/pull/625]
> cppcache/integration-test/testThinClientCq.cpp at line 156ish
> cppcache/integration-test/testThinClientCq.cpp at line 220ish
> cppcache/integration-test/testThinClientCqDurable.cpp at line 125ish
> cppcache/integration-test/testThinClientSecurityCQAuthorizationMU.cppline 
> 119ish
> cppcache/integration-test/testThinClientSecurityDurableCQAuthorizationMU.cpp 
> at line 1229ish
> cppcache/integration/test/SimpleCqListener.cpp at line 43ish
> cppcache/src/CqQueryImpl.cpp at line 548ish
> cppcache/src/CqService.cpp at line 71ish
> cppcache/src/LRUAction.cpp at line 47ish
> cppcache/src/LocalRegion.cpp at line 2586ish
> cppcache/src/LocalRegion.cpp at line 2639ish
> cppcache/src/LocalRegion.cpp at line 2696ish
> cppcache/src/LocalRegion.cpp at line 2715ish
> cppcache/src/LocalRegion.cpp at line 2781ish
> cppcache/src/PdxInstanceImpl.cpp at line 247ish
> cppcache/src/PdxInstanceImpl.cpp at line 485ish
> cppcache/src/PdxInstanceImpl.cpp at line 667ish
> cppcache/src/PdxInstanceImpl.cpp at line 1136ish
> cppcache/src/SerializationRegistry.cpp at line 182ish
> cppcache/src/SerializationRegistry.cpp at line 259ish
> cppcache/src/SerializationRegistry.cpp at line 626ish
> cppcache/src/SerializationRegistry.cpp at line 703ish
> cppcache/src/TcrConnection.cpp at line 1194ish
> cppcache/src/TcrMessage.cpp at line 1015ish
> tests/cpp/fwklib/IpcHandler.cpp at line 231ish
> tests/cpp/security/XmlAuthzCredentialGenerator.hpp at line 107ish
> tests/cpp/security/XmlAuthzCredentialGenerator.hpp at line 162ish



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8468) Review use of switch statements with enums

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8468?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8468.
-
Resolution: Fixed

> Review use of switch statements with enums
> --
>
> Key: GEODE-8468
> URL: https://issues.apache.org/jira/browse/GEODE-8468
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Oleske
>Priority: Major
>  Labels: GoodForNewContributors
>
> We should check our usage of switch statements with enums
> Before we add more enums
> Because readability is important
> Notes:  While working on GEODE-8340, it was determined that some of the 
> places where a switch statement over enums was used were cases where a switch 
> statement was not the best control structure.  The goal here is prevent a 
> long unwieldy list of switch statements.  There are a lot of places to 
> review, so it will probably be easiest to do this over several PRs, which may 
> require several stories.  The places listed below does not mean all of them 
> need to be fixed, but they should all be reviewed for improvement.  For 
> further context, check out the comments on the [pr for 
> 8340|https://github.com/apache/geode-native/pull/625]
> cppcache/integration-test/testThinClientCq.cpp at line 156ish
> cppcache/integration-test/testThinClientCq.cpp at line 220ish
> cppcache/integration-test/testThinClientCqDurable.cpp at line 125ish
> cppcache/integration-test/testThinClientSecurityCQAuthorizationMU.cppline 
> 119ish
> cppcache/integration-test/testThinClientSecurityDurableCQAuthorizationMU.cpp 
> at line 1229ish
> cppcache/integration/test/SimpleCqListener.cpp at line 43ish
> cppcache/src/CqQueryImpl.cpp at line 548ish
> cppcache/src/CqService.cpp at line 71ish
> cppcache/src/LRUAction.cpp at line 47ish
> cppcache/src/LocalRegion.cpp at line 2586ish
> cppcache/src/LocalRegion.cpp at line 2639ish
> cppcache/src/LocalRegion.cpp at line 2696ish
> cppcache/src/LocalRegion.cpp at line 2715ish
> cppcache/src/LocalRegion.cpp at line 2781ish
> cppcache/src/PdxInstanceImpl.cpp at line 247ish
> cppcache/src/PdxInstanceImpl.cpp at line 485ish
> cppcache/src/PdxInstanceImpl.cpp at line 667ish
> cppcache/src/PdxInstanceImpl.cpp at line 1136ish
> cppcache/src/SerializationRegistry.cpp at line 182ish
> cppcache/src/SerializationRegistry.cpp at line 259ish
> cppcache/src/SerializationRegistry.cpp at line 626ish
> cppcache/src/SerializationRegistry.cpp at line 703ish
> cppcache/src/TcrConnection.cpp at line 1194ish
> cppcache/src/TcrMessage.cpp at line 1015ish
> tests/cpp/fwklib/IpcHandler.cpp at line 231ish
> tests/cpp/security/XmlAuthzCredentialGenerator.hpp at line 107ish
> tests/cpp/security/XmlAuthzCredentialGenerator.hpp at line 162ish



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8510) Write Testing.md to Illustrate How to Contribute New Tests

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8510?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8510.
-
Resolution: Fixed

> Write Testing.md to Illustrate How to Contribute New Tests
> --
>
> Key: GEODE-8510
> URL: https://issues.apache.org/jira/browse/GEODE-8510
> Project: Geode
>  Issue Type: Improvement
>  Components: docs, native client
>Reporter: Michael Martell
>Priority: Major
>
> Testing for geode-native consists of a lot of different testing environments 
> including NUnit, GoogleTest, XUnit, as well as legacy tests that use our own 
> built-in test frameworks. We need a document describing the methodology for 
> writing new tests using our new frameworks for C++ and .NET.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8510) Write Testing.md to Illustrate How to Contribute New Tests

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8510?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8510.
---

> Write Testing.md to Illustrate How to Contribute New Tests
> --
>
> Key: GEODE-8510
> URL: https://issues.apache.org/jira/browse/GEODE-8510
> Project: Geode
>  Issue Type: Improvement
>  Components: docs, native client
>Reporter: Michael Martell
>Priority: Major
>
> Testing for geode-native consists of a lot of different testing environments 
> including NUnit, GoogleTest, XUnit, as well as legacy tests that use our own 
> built-in test frameworks. We need a document describing the methodology for 
> writing new tests using our new frameworks for C++ and .NET.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Commented] (GEODE-8510) Write Testing.md to Illustrate How to Contribute New Tests

2022-02-17 Thread Ernest Burghardt (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8510?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17494057#comment-17494057
 ] 

Ernest Burghardt commented on GEODE-8510:
-

[~mmartell] still need to do this?

> Write Testing.md to Illustrate How to Contribute New Tests
> --
>
> Key: GEODE-8510
> URL: https://issues.apache.org/jira/browse/GEODE-8510
> Project: Geode
>  Issue Type: Improvement
>  Components: docs, native client
>Reporter: Michael Martell
>Priority: Major
>
> Testing for geode-native consists of a lot of different testing environments 
> including NUnit, GoogleTest, XUnit, as well as legacy tests that use our own 
> built-in test frameworks. We need a document describing the methodology for 
> writing new tests using our new frameworks for C++ and .NET.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8562) Add a new serialization test and example that uses a class for the key

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8562.
-
Resolution: Fixed

> Add a new serialization test and example that uses a class for the key
> --
>
> Key: GEODE-8562
> URL: https://issues.apache.org/jira/browse/GEODE-8562
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Martell
>Priority: Major
>  Labels: pull-request-available
>
> There appears to be no native client tests that use a class for the key.
> A new DataSerializable test should be added (new framework of course) that 
> uses a class that implements DataSerializable for both the key and the value. 
> Also, the test should be added for both C++ and .NET.
> Also update the existing put/get examples to include using a class as the 
> key. Note, this will require Java code that instantiates the key class.
> Notes:
>  * 
>  Using a class as a key requires the equivalent Java class to be deployed, as 
> well as an Instantiator for that class to be executed by the server on 
> startup. An example of this is the 
> QueryTest::DataSerializableQueryHaveCorrectValues which uses Position.cs and 
> Position.java.
>  * In this existing test, Position.java needs to be deployed and instantiated 
> because the test executes queries. In this new test, we need to deploy and 
> instantiate the java code for the key class because it's a key not a value.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8562) Add a new serialization test and example that uses a class for the key

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8562?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8562.
---

> Add a new serialization test and example that uses a class for the key
> --
>
> Key: GEODE-8562
> URL: https://issues.apache.org/jira/browse/GEODE-8562
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Martell
>Priority: Major
>  Labels: pull-request-available
>
> There appears to be no native client tests that use a class for the key.
> A new DataSerializable test should be added (new framework of course) that 
> uses a class that implements DataSerializable for both the key and the value. 
> Also, the test should be added for both C++ and .NET.
> Also update the existing put/get examples to include using a class as the 
> key. Note, this will require Java code that instantiates the key class.
> Notes:
>  * 
>  Using a class as a key requires the equivalent Java class to be deployed, as 
> well as an Instantiator for that class to be executed by the server on 
> startup. An example of this is the 
> QueryTest::DataSerializableQueryHaveCorrectValues which uses Position.cs and 
> Position.java.
>  * In this existing test, Position.java needs to be deployed and instantiated 
> because the test executes queries. In this new test, we need to deploy and 
> instantiate the java code for the key class because it's a key not a value.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Updated] (GEODE-8628) SetReadTimeout not working

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8628?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt updated GEODE-8628:

Issue Type: Test  (was: Bug)

> SetReadTimeout not working
> --
>
> Key: GEODE-8628
> URL: https://issues.apache.org/jira/browse/GEODE-8628
> Project: Geode
>  Issue Type: Test
>  Components: native client
>Reporter: Michael Martell
>Priority: Major
>
> This PoolFactory API isn't working. The docs for this pool attribute describe 
> this as:
>  * Number of milliseconds to wait for a response from a server before the 
> connection times out.
> This timeout parameter appears to be passed in each TcrMessage request. 
> However, it's not clear how it is actually used. The only test for this to 
> verify the attribute getter and setter.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Commented] (GEODE-8628) SetReadTimeout not working

2022-02-17 Thread Ernest Burghardt (Jira)


[ 
https://issues.apache.org/jira/browse/GEODE-8628?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17494053#comment-17494053
 ] 

Ernest Burghardt commented on GEODE-8628:
-

need a test for related functionality

> SetReadTimeout not working
> --
>
> Key: GEODE-8628
> URL: https://issues.apache.org/jira/browse/GEODE-8628
> Project: Geode
>  Issue Type: Test
>  Components: native client
>Reporter: Michael Martell
>Priority: Major
>
> This PoolFactory API isn't working. The docs for this pool attribute describe 
> this as:
>  * Number of milliseconds to wait for a response from a server before the 
> connection times out.
> This timeout parameter appears to be passed in each TcrMessage request. 
> However, it's not clear how it is actually used. The only test for this to 
> verify the attribute getter and setter.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8653) Investigate use of Infer static analysis tool

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8653?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8653.
---

> Investigate use of Infer static analysis tool
> -
>
> Key: GEODE-8653
> URL: https://issues.apache.org/jira/browse/GEODE-8653
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Blake Bender
>Assignee: Mario Salazar de Torres
>Priority: Major
>
> Facebook recently released a static analysis tool for C++ and several other 
> languages as OSS.  It looks fairly thorough, and would probably be an 
> excellent tool to incorporate into a CI pipeline or similar.  Perhaps someone 
> can try setting it up to run against geode-native and provide some feedback 
> here regarding ease-of-use and quality of results, so we can decide whether 
> to add it to our process.
> [https://fbinfer.com|https://fbinfer.com/]
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8653) Investigate use of Infer static analysis tool

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8653?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8653.
-
Resolution: Abandoned

> Investigate use of Infer static analysis tool
> -
>
> Key: GEODE-8653
> URL: https://issues.apache.org/jira/browse/GEODE-8653
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Blake Bender
>Assignee: Mario Salazar de Torres
>Priority: Major
>
> Facebook recently released a static analysis tool for C++ and several other 
> languages as OSS.  It looks fairly thorough, and would probably be an 
> excellent tool to incorporate into a CI pipeline or similar.  Perhaps someone 
> can try setting it up to run against geode-native and provide some feedback 
> here regarding ease-of-use and quality of results, so we can decide whether 
> to add it to our process.
> [https://fbinfer.com|https://fbinfer.com/]
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8666) Enforce warning no-non-virtual-dtor

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8666?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8666.
---

> Enforce warning no-non-virtual-dtor
> ---
>
> Key: GEODE-8666
> URL: https://issues.apache.org/jira/browse/GEODE-8666
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Oleske
>Priority: Major
>  Labels: pull-request-available
>
> Given I compile the code without exempting no-non-virtual-dtor
> Then it should compile
> Note - was marked as a todo



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8679) Replace Native logger with 3rd party solution

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8679?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8679.
---

> Replace Native logger with 3rd party solution
> -
>
> Key: GEODE-8679
> URL: https://issues.apache.org/jira/browse/GEODE-8679
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Blake Bender
>Priority: Major
>  Labels: pull-request-available
>
> As a native client developer, I would prefer to only maintain code that 
> actually implements core features of a Geode client.  A logging subsystem is 
> definitely not core Geode functionality.  Additionally, the existing 
> geode-native logger does not properly support the `loig-file-size-limit` and 
> `log-disk-space-limit` properties.  Rather than attempt to fix the existing 
> logging code to properly implement these, we should switch to a 3rd-party 
> solution (spdlog or similar) that already has these features available and 
> working.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8666) Enforce warning no-non-virtual-dtor

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8666?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8666.
-
Resolution: Won't Fix

> Enforce warning no-non-virtual-dtor
> ---
>
> Key: GEODE-8666
> URL: https://issues.apache.org/jira/browse/GEODE-8666
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Oleske
>Priority: Major
>  Labels: pull-request-available
>
> Given I compile the code without exempting no-non-virtual-dtor
> Then it should compile
> Note - was marked as a todo



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8723) Convert unit tests to encrypt connections by default

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8723?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8723.
---

> Convert unit tests to encrypt connections by default
> 
>
> Key: GEODE-8723
> URL: https://issues.apache.org/jira/browse/GEODE-8723
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Matthew Reddington
>Priority: Major
>
> Almost all of our tests use plaintext, unauthenticated connections to a Geode 
> cluster, whereas this does not reflect what any client does anywhere ever; 
> the opposite is true. Our tests should reflect the common case, encryption 
> and authentication by default, and plaintext connections should be 
> exceptional test cases.
> Make it trivially configurable that all tests use encryption and 
> authentication. Make it the default.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8723) Convert unit tests to encrypt connections by default

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8723?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8723.
-
Resolution: Won't Fix

for unit tests no, integration test yes

> Convert unit tests to encrypt connections by default
> 
>
> Key: GEODE-8723
> URL: https://issues.apache.org/jira/browse/GEODE-8723
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Matthew Reddington
>Priority: Major
>
> Almost all of our tests use plaintext, unauthenticated connections to a Geode 
> cluster, whereas this does not reflect what any client does anywhere ever; 
> the opposite is true. Our tests should reflect the common case, encryption 
> and authentication by default, and plaintext connections should be 
> exceptional test cases.
> Make it trivially configurable that all tests use encryption and 
> authentication. Make it the default.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8679) Replace Native logger with 3rd party solution

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8679?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8679.
-
Resolution: Won't Fix

post log4j we've decided to not use 3rd party logging.

> Replace Native logger with 3rd party solution
> -
>
> Key: GEODE-8679
> URL: https://issues.apache.org/jira/browse/GEODE-8679
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Blake Bender
>Priority: Major
>  Labels: pull-request-available
>
> As a native client developer, I would prefer to only maintain code that 
> actually implements core features of a Geode client.  A logging subsystem is 
> definitely not core Geode functionality.  Additionally, the existing 
> geode-native logger does not properly support the `loig-file-size-limit` and 
> `log-disk-space-limit` properties.  Rather than attempt to fix the existing 
> logging code to properly implement these, we should switch to a 3rd-party 
> solution (spdlog or similar) that already has these features available and 
> working.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8731) Remove inline functions from published headers

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8731?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8731.
-
Resolution: Won't Fix

> Remove inline functions from published headers
> --
>
> Key: GEODE-8731
> URL: https://issues.apache.org/jira/browse/GEODE-8731
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Matthew Reddington
>Priority: Major
>
> Any inline functions found in cppcache/geode/include incur an ABI change and 
> a version minor should any of that implementation need be changed. Nothing 
> there should be inlined or defaulted.
> Move inlined methods into source files and bump the version minor.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8731) Remove inline functions from published headers

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8731?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8731.
---

> Remove inline functions from published headers
> --
>
> Key: GEODE-8731
> URL: https://issues.apache.org/jira/browse/GEODE-8731
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Matthew Reddington
>Priority: Major
>
> Any inline functions found in cppcache/geode/include incur an ABI change and 
> a version minor should any of that implementation need be changed. Nothing 
> there should be inlined or defaulted.
> Move inlined methods into source files and bump the version minor.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8792) Support Universal builds on macOS

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8792.
---

> Support Universal builds on macOS
> -
>
> Key: GEODE-8792
> URL: https://issues.apache.org/jira/browse/GEODE-8792
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Jacob Barrett
>Priority: Major
>  Labels: pull-request-available
>
> Support Universal builds (x86_64 and arm64) on recent macOS.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8775) Add Gfsh execute function support to new C++ test framework

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8775?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8775.
-
Resolution: Fixed

> Add Gfsh execute function support to new C++ test framework
> ---
>
> Key: GEODE-8775
> URL: https://issues.apache.org/jira/browse/GEODE-8775
> Project: Geode
>  Issue Type: Test
>  Components: native client
>Reporter: Michael Martell
>Priority: Minor
>  Labels: pull-request-available
>
> In the course of adding a new C++ test for using a class as a key I 
> discovered that the new C++ test framework didn't support the gfsh execute 
> function command.
>  
> Note: This functionality already exists in the new .NET test framework. This 
> ticket is to add it to the new C++ framework



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8792) Support Universal builds on macOS

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8792.
-
Resolution: Fixed

> Support Universal builds on macOS
> -
>
> Key: GEODE-8792
> URL: https://issues.apache.org/jira/browse/GEODE-8792
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Jacob Barrett
>Priority: Major
>  Labels: pull-request-available
>
> Support Universal builds (x86_64 and arm64) on recent macOS.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8775) Add Gfsh execute function support to new C++ test framework

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8775?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8775.
---

> Add Gfsh execute function support to new C++ test framework
> ---
>
> Key: GEODE-8775
> URL: https://issues.apache.org/jira/browse/GEODE-8775
> Project: Geode
>  Issue Type: Test
>  Components: native client
>Reporter: Michael Martell
>Priority: Minor
>  Labels: pull-request-available
>
> In the course of adding a new C++ test for using a class as a key I 
> discovered that the new C++ test framework didn't support the gfsh execute 
> function command.
>  
> Note: This functionality already exists in the new .NET test framework. This 
> ticket is to add it to the new C++ framework



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8843) Port testThinClientConflation test to new framework

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8843?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8843.
---

> Port testThinClientConflation test to new framework
> ---
>
> Key: GEODE-8843
> URL: https://issues.apache.org/jira/browse/GEODE-8843
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Blake Bender
>Assignee: Blake Bender
>Priority: Major
>  Labels: pull-request-available
>
> As a developer, I would like to be able to run one test suite locally and 
> cover all of my tests.  There are a ton of other reasons why we wish to port 
> all the 'legacy' tests and ditch the old test code, but this is sufficient.  
> There's no particular reason to target this test specifically, it just 
> happens to be first on my list because I was looking for one that didn't take 
> forever to complete.
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8843) Port testThinClientConflation test to new framework

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8843?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8843.
-
Resolution: Fixed

> Port testThinClientConflation test to new framework
> ---
>
> Key: GEODE-8843
> URL: https://issues.apache.org/jira/browse/GEODE-8843
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Blake Bender
>Assignee: Blake Bender
>Priority: Major
>  Labels: pull-request-available
>
> As a developer, I would like to be able to run one test suite locally and 
> cover all of my tests.  There are a ton of other reasons why we wish to port 
> all the 'legacy' tests and ditch the old test code, but this is sufficient.  
> There's no particular reason to target this test specifically, it just 
> happens to be first on my list because I was looking for one that didn't take 
> forever to complete.
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8845) Add Missing public Declarations for .NET Cacheables

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8845?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8845.
---

> Add Missing public Declarations for .NET Cacheables
> ---
>
> Key: GEODE-8845
> URL: https://issues.apache.org/jira/browse/GEODE-8845
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Michael Martell
>Priority: Minor
>  Labels: pull-request-available
>
> The .NET APIs provide Cacheable types (e.g. CacheableString) for the standard 
> .NET types. However, several of them are missing the public declarations, 
> making them inaccessible. 
> These classes provide a hashCode() function that matches the corresponding 
> hashCode on the server side. It would be nice to be able to leverage these 
> functions when using these types in a key class. I discovered this when 
> implementing a new ClassAsKey example.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8845) Add Missing public Declarations for .NET Cacheables

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8845?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8845.
-
Resolution: Won't Fix

> Add Missing public Declarations for .NET Cacheables
> ---
>
> Key: GEODE-8845
> URL: https://issues.apache.org/jira/browse/GEODE-8845
> Project: Geode
>  Issue Type: Bug
>  Components: native client
>Reporter: Michael Martell
>Priority: Minor
>  Labels: pull-request-available
>
> The .NET APIs provide Cacheable types (e.g. CacheableString) for the standard 
> .NET types. However, several of them are missing the public declarations, 
> making them inaccessible. 
> These classes provide a hashCode() function that matches the corresponding 
> hashCode on the server side. It would be nice to be able to leverage these 
> functions when using these types in a key class. I discovered this when 
> implementing a new ClassAsKey example.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8891) Convert remaining singletons to Meyers pattern

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8891?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8891.
---

> Convert remaining singletons to Meyers pattern
> --
>
> Key: GEODE-8891
> URL: https://issues.apache.org/jira/browse/GEODE-8891
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Blake Bender
>Priority: Major
>  Labels: pull-request-available
>
> As a developer, it is to my advantage to preemptively pay technical debt when 
> I can, especially if said debt has potentially subtle bugs.  Geode Native 
> still has several poortly-written singleton objects in legacy code, and as 
> we've just seen with the rewrite of EventId for GEODE-8887, these can 
> introduce very strange behavior in a multi-threaded app.  We need to identify 
> any of these remaining, and clean them up like we did for EventId.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8891) Convert remaining singletons to Meyers pattern

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8891?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8891.
-
Resolution: Fixed

> Convert remaining singletons to Meyers pattern
> --
>
> Key: GEODE-8891
> URL: https://issues.apache.org/jira/browse/GEODE-8891
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Blake Bender
>Priority: Major
>  Labels: pull-request-available
>
> As a developer, it is to my advantage to preemptively pay technical debt when 
> I can, especially if said debt has potentially subtle bugs.  Geode Native 
> still has several poortly-written singleton objects in legacy code, and as 
> we've just seen with the rewrite of EventId for GEODE-8887, these can 
> introduce very strange behavior in a multi-threaded app.  We need to identify 
> any of these remaining, and clean them up like we did for EventId.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8949) Create a Continuous Integration Pipeline

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8949?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8949.
---

> Create a Continuous Integration Pipeline
> 
>
> Key: GEODE-8949
> URL: https://issues.apache.org/jira/browse/GEODE-8949
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Martell
>Priority: Major
>  Labels: pull-request-available
>
> This will be our open source CI for publishing to the Apache Software 
> Foundation. Two primary tenets are:
>  * based on Concourse
>  * PRs will trigger the CI pipeline and can't be merged until they pass the CI
> Note: The bulk of this work has been completed in draft [PR 
> #716|http://github.com/apache/geode-native/pull/716]. See that PR for further 
> details.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Resolved] (GEODE-8949) Create a Continuous Integration Pipeline

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8949?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt resolved GEODE-8949.
-
Resolution: Done

> Create a Continuous Integration Pipeline
> 
>
> Key: GEODE-8949
> URL: https://issues.apache.org/jira/browse/GEODE-8949
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Martell
>Priority: Major
>  Labels: pull-request-available
>
> This will be our open source CI for publishing to the Apache Software 
> Foundation. Two primary tenets are:
>  * based on Concourse
>  * PRs will trigger the CI pipeline and can't be merged until they pass the CI
> Note: The bulk of this work has been completed in draft [PR 
> #716|http://github.com/apache/geode-native/pull/716]. See that PR for further 
> details.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


[jira] [Closed] (GEODE-8954) Use a GEODE_VERSION variable for the CI

2022-02-17 Thread Ernest Burghardt (Jira)


 [ 
https://issues.apache.org/jira/browse/GEODE-8954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ernest Burghardt closed GEODE-8954.
---

> Use a GEODE_VERSION variable for the CI 
> 
>
> Key: GEODE-8954
> URL: https://issues.apache.org/jira/browse/GEODE-8954
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Michael Martell
>Priority: Minor
>
> Several CI related files have GEODE_VERSION hardcodes. This includes 
> .lgtm.yml, serveral Dockerfiles and Packer files. This ticket is to create a 
> variable that can be utilized and passed in as opposed to hardcoding in a 
> bunch of files.
> Setting the variable and passing in to *_docker build_* as an argument seems 
> prudent.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)


  1   2   3   4   5   6   7   8   >