aokolnychyi commented on a change in pull request #1873:
URL: https://github.com/apache/iceberg/pull/1873#discussion_r535992519
##########
File path:
hive-metastore/src/main/java/org/apache/iceberg/hive/HiveTableOperations.java
##########
@@ -70,21 +72,38 @@
public class HiveTableOperations extends BaseMetastoreTableOperations {
private static final Logger LOG =
LoggerFactory.getLogger(HiveTableOperations.class);
- private static final String HIVE_ACQUIRE_LOCK_STATE_TIMEOUT_MS =
"iceberg.hive.lock-timeout-ms";
- private static final long HIVE_ACQUIRE_LOCK_STATE_TIMEOUT_MS_DEFAULT = 3 *
60 * 1000; // 3 minutes
+ private static final String HIVE_ACQUIRE_LOCK_TIMEOUT_MS =
"iceberg.hive.lock-timeout-ms";
+ private static final String HIVE_LOCK_CHECK_MIN_WAIT_MS =
"iceberg.hive.lock-check-min-wait-ms";
+ private static final String HIVE_LOCK_CHECK_MAX_WAIT_MS =
"iceberg.hive.lock-check-max-wait-ms";
+ private static final String HIVE_LOCK_CHECK_BACKOFF_SCALE_FACTOR =
"iceberg.hive.lock-check-backoff-scale-factor";
+ private static final long HIVE_ACQUIRE_LOCK_TIMEOUT_MS_DEFAULT = 3 * 60 *
1000; // 3 minutes
+ private static final long HIVE_LOCK_CHECK_MIN_WAIT_MS_DEFAULT = 50; // 50
milliseconds
+ private static final long HIVE_LOCK_CHECK_MAX_WAIT_MS_DEFAULT = 5 * 1000; //
5 seconds
+ private static final double HIVE_LOCK_CHECK_BACKOFF_SCALE_FACTOR_DEFAULT =
1.5;
private static final DynMethods.UnboundMethod ALTER_TABLE =
DynMethods.builder("alter_table")
.impl(HiveMetaStoreClient.class, "alter_table_with_environmentContext",
String.class, String.class, Table.class, EnvironmentContext.class)
.impl(HiveMetaStoreClient.class, "alter_table",
String.class, String.class, Table.class, EnvironmentContext.class)
.build();
+ protected static class WaitingForLockException extends RuntimeException {
+ public WaitingForLockException(String message) {
+ super(message);
+ }
+ }
+
+ private static final WaitingForLockException WAITING_FOR_LOCK_EXCEPTION =
Review comment:
nit: it seems we use it only in one place. Would it make sense to just
call `throw new` there?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]