Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-1907

Enhance to bubble up exceptions that occur during instantiation/wiring of cache loader defined in xml

    Details

      Description

      When using the SpringEmbeddedCacheManagerFactoryBean, any exception that occurs when attempting to instantiate a CacheStore implementation does not bubble up to the log, even with full error logging turned on. A specific failure case is inadvertently defining the CacheStore implementation property setter method with 'private' scope. Being able to see the error in the log would allow for much quicker diagnosis and resolution of the underlying issue in the implementation. Right now, the only way to find such an issue - other than to simply have it jump out at you in the CacheStore implementation code - is to tediously step through the unmarshalling process in the Infinispan source itself.

      The log is similarly silent about an incorrect setting of the CacheStore class name.

        Gliffy Diagrams

          Activity

          mmogley Michael Mogley created issue -
          mmogley Michael Mogley made changes -
          Field Original Value New Value
          Description When using the SpringEmbeddedCacheManagerFactoryBean, any exception that occurs when attempting to instantiate a CacheStore implementation do not bubble up to the log, even with full error logging turned on. A specific failure case is inadvertently defining the CacheStore implementation property setter method with 'private' scope. Being able to see the error in the log would allow for much quicker diagnosis and resolution of the underlying issue in the implementation. Right now, the only way to find such issue - other than to simply have it jump out at you in the CacheStore implementation code - is to step through the marshalling process in the Infinispan source itself. When using the SpringEmbeddedCacheManagerFactoryBean, any exception that occurs when attempting to instantiate a CacheStore implementation does not bubble up to the log, even with full error logging turned on. A specific failure case is inadvertently defining the CacheStore implementation property setter method with 'private' scope. Being able to see the error in the log would allow for much quicker diagnosis and resolution of the underlying issue in the implementation. Right now, the only way to find such issue - other than to simply have it jump out at you in the CacheStore implementation code - is to step through the marshalling process in the Infinispan source itself.
          Forum Reference https://community.jboss.org/thread/196438?tstart=0 https://community.jboss.org/thread/196438?tstart=0
          mmogley Michael Mogley made changes -
          Description When using the SpringEmbeddedCacheManagerFactoryBean, any exception that occurs when attempting to instantiate a CacheStore implementation does not bubble up to the log, even with full error logging turned on. A specific failure case is inadvertently defining the CacheStore implementation property setter method with 'private' scope. Being able to see the error in the log would allow for much quicker diagnosis and resolution of the underlying issue in the implementation. Right now, the only way to find such issue - other than to simply have it jump out at you in the CacheStore implementation code - is to step through the marshalling process in the Infinispan source itself. When using the SpringEmbeddedCacheManagerFactoryBean, any exception that occurs when attempting to instantiate a CacheStore implementation does not bubble up to the log, even with full error logging turned on. A specific failure case is inadvertently defining the CacheStore implementation property setter method with 'private' scope. Being able to see the error in the log would allow for much quicker diagnosis and resolution of the underlying issue in the implementation. Right now, the only way to find such an issue - other than to simply have it jump out at you in the CacheStore implementation code - is to tediously step through the marshalling process in the Infinispan source itself.
          Forum Reference https://community.jboss.org/thread/196438?tstart=0 https://community.jboss.org/thread/196438?tstart=0
          mmogley Michael Mogley made changes -
          Description When using the SpringEmbeddedCacheManagerFactoryBean, any exception that occurs when attempting to instantiate a CacheStore implementation does not bubble up to the log, even with full error logging turned on. A specific failure case is inadvertently defining the CacheStore implementation property setter method with 'private' scope. Being able to see the error in the log would allow for much quicker diagnosis and resolution of the underlying issue in the implementation. Right now, the only way to find such an issue - other than to simply have it jump out at you in the CacheStore implementation code - is to tediously step through the marshalling process in the Infinispan source itself. When using the SpringEmbeddedCacheManagerFactoryBean, any exception that occurs when attempting to instantiate a CacheStore implementation does not bubble up to the log, even with full error logging turned on. A specific failure case is inadvertently defining the CacheStore implementation property setter method with 'private' scope. Being able to see the error in the log would allow for much quicker diagnosis and resolution of the underlying issue in the implementation. Right now, the only way to find such an issue - other than to simply have it jump out at you in the CacheStore implementation code - is to tediously step through the marshalling process in the Infinispan source itself.

          The log is similarly silent about an incorrect setting of the CacheStore class name.
          Forum Reference https://community.jboss.org/thread/196438?tstart=0 https://community.jboss.org/thread/196438?tstart=0
          mmogley Michael Mogley made changes -
          Summary Infinispan swallowing exceptions when attempting to instantiate invalid cache loader defined in xml Enhance to bubble up exceptions that occur during instantiation/wiring of cache loader defined in xml
          Forum Reference https://community.jboss.org/thread/196438?tstart=0 https://community.jboss.org/thread/196438?tstart=0
          mmogley Michael Mogley made changes -
          Affects Version/s 5.1.x [ 12319209 ]
          Affects Version/s 5.1.2.FINAL [ 12319012 ]
          Forum Reference https://community.jboss.org/thread/196438?tstart=0 https://community.jboss.org/thread/196438?tstart=0
          galder.zamarreno Galder Zamarreño made changes -
          Fix Version/s 5.1.x [ 12319209 ]
          Fix Version/s 5.2.0.ALPHA1 [ 12318882 ]
          Fix Version/s 5.2.0.FINAL [ 12314720 ]
          Affects Version/s 5.1.2.FINAL [ 12319012 ]
          Affects Version/s 5.2.0.FINAL [ 12314720 ]
          Affects Version/s 5.1.x [ 12319209 ]
          Forum Reference https://community.jboss.org/thread/196438?tstart=0 https://community.jboss.org/thread/196438?tstart=0
          galder.zamarreno Galder Zamarreño made changes -
          Assignee Manik Surtani [ manik ] Galder Zamarreño [ galder.zamarreno ]
          mmogley Michael Mogley made changes -
          Description When using the SpringEmbeddedCacheManagerFactoryBean, any exception that occurs when attempting to instantiate a CacheStore implementation does not bubble up to the log, even with full error logging turned on. A specific failure case is inadvertently defining the CacheStore implementation property setter method with 'private' scope. Being able to see the error in the log would allow for much quicker diagnosis and resolution of the underlying issue in the implementation. Right now, the only way to find such an issue - other than to simply have it jump out at you in the CacheStore implementation code - is to tediously step through the marshalling process in the Infinispan source itself.

          The log is similarly silent about an incorrect setting of the CacheStore class name.
          When using the SpringEmbeddedCacheManagerFactoryBean, any exception that occurs when attempting to instantiate a CacheStore implementation does not bubble up to the log, even with full error logging turned on. A specific failure case is inadvertently defining the CacheStore implementation property setter method with 'private' scope. Being able to see the error in the log would allow for much quicker diagnosis and resolution of the underlying issue in the implementation. Right now, the only way to find such an issue - other than to simply have it jump out at you in the CacheStore implementation code - is to tediously step through the unmarshalling process in the Infinispan source itself.

          The log is similarly silent about an incorrect setting of the CacheStore class name.
          Forum Reference https://community.jboss.org/thread/196438?tstart=0 https://community.jboss.org/thread/196438?tstart=0
          manik Manik Surtani made changes -
          Fix Version/s 5.1.3.CR1 [ 12319263 ]
          Fix Version/s 5.2.0.FINAL [ 12314720 ]
          Fix Version/s 5.2.0.ALPHA1 [ 12318882 ]
          Hide
          galder.zamarreno Galder Zamarreño added a comment -

          Michael, once you fixed the property method, did the cache store get instantiated and does it work as expected?

          Based on my testing, the way configuration was built for Spring meant that cache stores would be started at all, not even constructed.

          Anyway, I'm fixing it so that parsing is done using the new parser which will show such errors.

          Show
          galder.zamarreno Galder Zamarreño added a comment - Michael, once you fixed the property method, did the cache store get instantiated and does it work as expected? Based on my testing, the way configuration was built for Spring meant that cache stores would be started at all, not even constructed. Anyway, I'm fixing it so that parsing is done using the new parser which will show such errors.
          galder.zamarreno Galder Zamarreño made changes -
          Status Open [ 1 ] Pull Request Sent [ 10011 ]
          Git Pull Request https://github.com/infinispan/infinispan/pull/1015
          Hide
          mmogley Michael Mogley added a comment -

          Yes, once I fixed the property method in the cache-loader implementation, it was successfully instantiated, wired up, and started.

          Show
          mmogley Michael Mogley added a comment - Yes, once I fixed the property method in the cache-loader implementation, it was successfully instantiated, wired up, and started.
          galder.zamarreno Galder Zamarreño made changes -
          Status Pull Request Sent [ 10011 ] Resolved [ 5 ]
          Resolution Done [ 1 ]
          velias Vlastimil Eliáš made changes -
          Workflow GIT Pull Request workflow [ 12486113 ] GIT Pull Request with Triage workflow [ 12615051 ]

            People

            • Assignee:
              galder.zamarreno Galder Zamarreño
              Reporter:
              mmogley Michael Mogley
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development