Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-3739

Remove failed snapshot track file in Windows OS for Cassandra adapter

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.22.0
    • cassandra-adapter
    • None

    Description

      In Windows OS, CassandraUnit leaves an extra "cassandra/.toDelete" snapshot track file.
      After migrating to Gradle, it is flagged as "unapproved license" and fails on "rat" task.
      It is annoying to manually delete this file every time.

      The issue is also mentioned in CALCITE-2442. But I found the snapshot file still exists with the fix.

        @AfterClass
        public static void tearDown() {
          if (RULE instanceof CassandraCQLUnit) {
            CassandraCQLUnit rule = (CassandraCQLUnit) RULE;
            rule.getSession().close();
            rule.getCluster().close();
            // see https://issues.apache.org/jira/browse/CALCITE-2442
            // see https://issues.apache.org/jira/browse/CASSANDRA-13085
            // Is it done by cluster.close() already ?
            if (FBUtilities.isWindows) {
              WindowsFailedSnapshotTracker.deleteOldSnapshots();
            }
          }
        }
      

      I make some profling work. It seems that the snapshot track file is locked by other threads.
      "The process cannot access the file because it is being used by another process."
      Any ideas?

      Attachments

        1. screen.png
          4 kB
          Feng Zhu

        Activity

          People

            sereda Andrei Sereda
            donnyzone Feng Zhu
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: