You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sb...@apache.org on 2017/07/06 08:04:18 UTC
[03/21] ignite git commit: GG-12407: Backport [GG-12364] to 8.1.2 -
skipCrc flag added
GG-12407: Backport [GG-12364] to 8.1.2 - skipCrc flag added
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/f4f8562e
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/f4f8562e
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/f4f8562e
Branch: refs/heads/ignite-gg-12306-1
Commit: f4f8562e8b61e09e14aad61d0d5cf98a2c896101
Parents: 68c0281
Author: Ivan Rakov <iv...@gmail.com>
Authored: Fri Jun 30 20:47:45 2017 +0300
Committer: Ivan Rakov <iv...@gmail.com>
Committed: Fri Jun 30 20:47:45 2017 +0300
----------------------------------------------------------------------
.../snapshot/SnapshotCheckParameters.java | 71 ++++++++++++++++++++
.../pagemem/snapshot/SnapshotOperation.java | 26 +++++--
2 files changed, 93 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/f4f8562e/modules/core/src/main/java/org/apache/ignite/internal/pagemem/snapshot/SnapshotCheckParameters.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/pagemem/snapshot/SnapshotCheckParameters.java b/modules/core/src/main/java/org/apache/ignite/internal/pagemem/snapshot/SnapshotCheckParameters.java
new file mode 100644
index 0000000..e95e79d
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/internal/pagemem/snapshot/SnapshotCheckParameters.java
@@ -0,0 +1,71 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements. See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+package org.apache.ignite.internal.pagemem.snapshot;
+
+import java.io.File;
+import java.io.Serializable;
+import java.util.Collection;
+import org.jetbrains.annotations.Nullable;
+
+/**
+ * Tuple for passing optional parameters of {@link SnapshotOperationType#CHECK}.
+ */
+public class SnapshotCheckParameters implements Serializable {
+ /** Optional paths. */
+ private final Collection<File> optionalPaths;
+
+ /** Flag for skipping CRC check. */
+ private final boolean skipCrc;
+
+ /**
+ * Factory method.
+ *
+ * @return Tuple with optional parameters or null if parameters are default.
+ *
+ * @param optionalPaths Optional paths.
+ * @param skipCrc Skip crc.
+ */
+ @Nullable public static SnapshotCheckParameters valueOf(Collection<File> optionalPaths, boolean skipCrc) {
+ if (optionalPaths == null && !skipCrc)
+ return null;
+
+ return new SnapshotCheckParameters(optionalPaths, skipCrc);
+ }
+
+ /**
+ * @param optionalPaths Optional paths.
+ * @param skipCrc Flag for skipping CRC check.
+ */
+ private SnapshotCheckParameters(Collection<File> optionalPaths, boolean skipCrc) {
+ this.optionalPaths = optionalPaths;
+ this.skipCrc = skipCrc;
+ }
+
+ /**
+ * @return Optional paths.
+ */
+ public Collection<File> optionalPaths() {
+ return optionalPaths;
+ }
+
+ /**
+ * @return Flag for skipping CRC check.
+ */
+ public boolean skipCrc() {
+ return skipCrc;
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/f4f8562e/modules/core/src/main/java/org/apache/ignite/internal/pagemem/snapshot/SnapshotOperation.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/pagemem/snapshot/SnapshotOperation.java b/modules/core/src/main/java/org/apache/ignite/internal/pagemem/snapshot/SnapshotOperation.java
index 2fe9f45d..863107a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/pagemem/snapshot/SnapshotOperation.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/pagemem/snapshot/SnapshotOperation.java
@@ -134,10 +134,18 @@ public class SnapshotOperation implements Serializable {
* @param op Op.
*/
public static Collection<File> getOptionalPathsParameter(SnapshotOperation op) {
- assert (op.type() == SnapshotOperationType.CHECK ||
- op.type() == SnapshotOperationType.RESTORE ||
- op.type() == SnapshotOperationType.RESTORE_2_PHASE)
- && (op.extraParameter() == null || op.extraParameter() instanceof Collection);
+ assert (op.type() == SnapshotOperationType.RESTORE ||
+ op.type() == SnapshotOperationType.RESTORE_2_PHASE)
+ && (op.extraParameter() == null || op.extraParameter() instanceof Collection)
+ || (op.type() == SnapshotOperationType.CHECK &&
+ (op.extraParameter() == null || op.extraParameter() instanceof SnapshotCheckParameters));
+
+ if (op.type() == SnapshotOperationType.CHECK) {
+ if (op.extraParameter() == null)
+ return null;
+ else
+ return ((SnapshotCheckParameters)op.extraParameter()).optionalPaths();
+ }
return (Collection<File>)op.extraParameter();
}
@@ -145,6 +153,16 @@ public class SnapshotOperation implements Serializable {
/**
* @param op Op.
*/
+ public static boolean getSkipCrcParameter(SnapshotOperation op) {
+ assert op.type() == SnapshotOperationType.CHECK &&
+ (op.extraParameter() == null | op.extraParameter() instanceof SnapshotCheckParameters);
+
+ return op.extraParameter() != null && ((SnapshotCheckParameters)op.extraParameter()).skipCrc();
+ }
+
+ /**
+ * @param op Op.
+ */
public static Boolean getFullSnapshotParameter(SnapshotOperation op) {
assert op.type() == SnapshotOperationType.CREATE && op.extraParameter() instanceof Boolean;