Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-40577

Dropping a dataset with an non-existent dataverse returns error 24034 (cannot find dataverse) in 6.6, but a "cannot find dataset" error in 6.5

    XMLWordPrintable

Details

    • Untriaged
    • 1
    • Yes
    • CX Sprint 209

    Description

      We (Java SDK folk) are now running our CI tests against 6.6, which has found this minor regression.

      The test is:

      @Test
      void dropDatasetFailsIfAbsent() {
          assertThrows(DatasetNotFoundException.class, () -> analytics.dropDataset("foo",
            dropDatasetAnalyticsOptions()
                .dataverseName("absentDataverse")));
      }
       

      In 6.6 this now fails as it raises a DataverseNotFoundException rather than DatasetNotFoundException, as cbas now returns a 24034 code.  In this test and the one below too, neither "foo" nor "absentDataverse" exist.

      This causes problems for our `ignoreIfNotExist` option, which allows dropping datasets and silently ignoring if they don't exist.  Because that logic is expecting a DataverseNotFoundException. 

      E.g. this other test fails with a DataverseNotFoundException, when you would expect it to succeed.  This test also passed in 6.5.

      @Test
      void dropDatasetCanIgnoreAbsent() {
        analytics.dropDataset("foo",
            dropDatasetAnalyticsOptions()
                .ignoreIfNotExists(true)
                .dataverseName("absentDataverse"));
      }
       

       For both tests, if I don't specify a dataverseName then the tests pass as expected.

      Attachments

        Activity

          People

            will.broadbelt Will Broadbelt
            graham.pople Graham Pople
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              PagerDuty