Skip to content

Commit 626d652

Browse files
authored
Merge pull request #64 from b0n541/remove_license_check
Remove license check
2 parents 36f8513 + bdd5b35 commit 626d652

35 files changed

+178
-612
lines changed

build-and-run.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
mvn clean package
22
cd distribution/target
3-
tar -xvf blobcity-db-1.7.4-alpha.tar.gz
4-
cd blobcity-db-1.7.4-alpha/bin
3+
tar -xvf blobcity-db-1.7.10-alpha.tar.gz
4+
cd blobcity-db-1.7.10-alpha/bin
55
./blobcity.sh

engine/pom.xml

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -688,6 +688,33 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
688688
<!--<version>1.4</version>-->
689689
<!--</dependency>-->
690690

691+
<!-- Java EE dependencies which were removed from Java 11 -->
692+
<dependency>
693+
<groupId>javax.xml.bind</groupId>
694+
<artifactId>jaxb-api</artifactId>
695+
<version>2.3.0</version>
696+
</dependency>
697+
<dependency>
698+
<groupId>com.sun.xml.bind</groupId>
699+
<artifactId>jaxb-core</artifactId>
700+
<version>2.3.0</version>
701+
</dependency>
702+
<dependency>
703+
<groupId>com.sun.xml.bind</groupId>
704+
<artifactId>jaxb-impl</artifactId>
705+
<version>2.3.0</version>
706+
</dependency>
707+
<dependency>
708+
<groupId>com.sun.xml.ws</groupId>
709+
<artifactId>jaxws-ri</artifactId>
710+
<version>2.3.2</version>
711+
<type>pom</type>
712+
<exclusions>
713+
<exclusion>
714+
<groupId>org.jvnet.mimepull</groupId>
715+
<artifactId>mimepull</artifactId>
716+
</exclusion>
717+
</exclusions>
718+
</dependency>
691719
</dependencies>
692-
693720
</project>

engine/src/main/java/com/blobcity/db/billing/SelectActivityLog.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818

1919
import com.blobcity.db.bsql.BSqlDataManager;
2020
import com.blobcity.db.exceptions.OperationException;
21-
import com.blobcity.db.license.LicenseRules;
21+
import com.blobcity.db.features.FeatureRules;
2222
import org.json.JSONObject;
2323
import org.slf4j.Logger;
2424
import org.slf4j.LoggerFactory;
@@ -51,7 +51,7 @@ public class SelectActivityLog {
5151
*/
5252
@Async
5353
public void registerSelectQuery(final String ds, final String collection, final String sql, final long rows, final long time) {
54-
if(!LicenseRules.QPS) return;
54+
if(!FeatureRules.QPS) return;
5555
JSONObject jsonObject = new JSONObject();
5656
jsonObject.put("ds", ds);
5757
jsonObject.put("c", collection);

engine/src/main/java/com/blobcity/db/bquery/BQueryAdminBean.java

Lines changed: 0 additions & 123 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,9 @@
2323
import com.blobcity.db.config.ConfigProperties;
2424
import com.blobcity.db.constants.BQueryCommands;
2525
import com.blobcity.db.constants.BQueryParameters;
26-
import com.blobcity.db.constants.License;
2726
import com.blobcity.db.exceptions.ErrorCode;
2827
import com.blobcity.db.exceptions.OperationException;
2928
import com.blobcity.db.export.ExportType;
30-
import com.blobcity.db.license.LicenseBean;
3129
import com.blobcity.db.operations.OperationStatus;
3230
import com.blobcity.db.operations.OperationTypes;
3331
import com.blobcity.db.operations.OperationsManager;
@@ -70,8 +68,6 @@ public class BQueryAdminBean implements BQueryExecutor {
7068
@Autowired
7169
private ConfigBean configBean;
7270
@Autowired
73-
private LicenseBean licenseBean;
74-
@Autowired
7571
private ProcedureStoreBean procedureStore;
7672
@Autowired
7773
private com.blobcity.db.security.SecurityManagerBean securityManager;
@@ -158,15 +154,6 @@ public String runQuery(final String jsonString) {
158154
case UNREGISTER_TRIGGER:
159155
returnJson = unregisterTrigger(payloadJson);
160156
break;
161-
case APPLY_LICENSE:
162-
returnJson = applyLicense(payloadJson);
163-
break;
164-
case LICENSE_STATUS:
165-
returnJson = licenseStatus(payloadJson);
166-
break;
167-
case REVOKE_LICENSE:
168-
returnJson = revokeLicense(payloadJson);
169-
break;
170157
case BULK_EXPORT:
171158
returnJson = bulkExport(app, table, payloadJson);
172159
break;
@@ -495,117 +482,7 @@ private JSONObject unregisterTrigger(JSONObject jsonObject) throws OperationExce
495482
private JSONObject unregisterProcedure(JSONObject jsonObject) throws OperationException {
496483
throw new OperationException(ErrorCode.OPERATION_NOT_SUPPORTED);
497484
}
498-
499-
private JSONObject applyLicense(JSONObject payloadJson) throws OperationException {
500-
String license;
501-
String currentNodeId;
502-
String nodeId = null;
503-
JSONObject responseJson;
504-
JSONObject licenseJson;
505-
506-
try {
507-
if (payloadJson.has("node-id")) {
508-
nodeId = payloadJson.getString("node-id");
509-
}
510-
currentNodeId = configBean.getStringProperty(ConfigProperties.NODE_ID);
511-
512-
if (nodeId != null && !nodeId.equals(currentNodeId)) {
513-
514-
//TODO: broadcast the query so that only the specified node executes it.
515-
throw new OperationException(ErrorCode.UNKNOWN_NODE_ID);
516-
}
517-
518-
license = payloadJson.getString("license");
519-
licenseBean.applyLicense(license);
520-
521-
responseJson = new JSONObject(JsonMessages.SUCCESS_ACKNOWLEDGEMENT);
522-
licenseJson = internalLicenseStatus();
523-
responseJson.put("license", licenseJson);
524-
return responseJson;
525-
} catch (JSONException ex) {
526-
logger.error(null, ex);
527-
throw new OperationException(ErrorCode.INTERNAL_OPERATION_ERROR);
528-
}
529-
}
530-
531-
private JSONObject licenseStatus(JSONObject payloadJson) throws OperationException {
532-
JSONObject responseJson;
533-
String currentNodeId;
534-
String nodeId = null;
535-
536-
try {
537-
if (payloadJson != null && payloadJson.has("node-id")) {
538-
nodeId = payloadJson.getString("node-id");
539-
}
540-
currentNodeId = configBean.getStringProperty(ConfigProperties.NODE_ID);
541-
542-
if (nodeId != null && !nodeId.equals(currentNodeId)) {
543-
544-
//TODO: broadcast the query so that only the specified node executes it.
545-
throw new OperationException(ErrorCode.UNKNOWN_NODE_ID);
546-
}
547-
548-
responseJson = new JSONObject(JsonMessages.SUCCESS_ACKNOWLEDGEMENT);
549-
responseJson.put("license", internalLicenseStatus());
550-
return responseJson;
551-
} catch (JSONException ex) {
552-
logger.error(null, ex);
553-
throw new OperationException(ErrorCode.INTERNAL_OPERATION_ERROR);
554-
}
555-
}
556-
557-
private JSONObject internalLicenseStatus() throws OperationException {
558-
JSONObject jsonObject = new JSONObject();
559-
try {
560-
jsonObject.put("node-id", configBean.getStringProperty(ConfigProperties.NODE_ID));
561-
jsonObject.put("type", "DB");
562-
jsonObject.put("valid", licenseBean.isActive());
563-
jsonObject.put("validity", licenseBean.getValidUntil());
564-
jsonObject.put("db-size", licenseBean.getDbSize());
565-
jsonObject.put("db-version", License.VERSION);
566-
return jsonObject;
567-
} catch (JSONException ex) {
568-
logger.error(null, ex);
569-
throw new OperationException(ErrorCode.INTERNAL_OPERATION_ERROR);
570-
}
571-
}
572-
573-
private JSONObject revokeLicense(JSONObject payloadJson) throws OperationException {
574-
String currentNodeId;
575-
String nodeId;
576-
577-
if (payloadJson == null) {
578-
licenseBean.revokeLicense();
579-
try {
580-
return new JSONObject(JsonMessages.SUCCESS_ACKNOWLEDGEMENT);
581-
} catch (JSONException ex) {
582-
logger.error(null, ex);
583-
throw new OperationException(ErrorCode.INTERNAL_OPERATION_ERROR);
584-
}
585-
}
586-
try {
587-
nodeId = payloadJson.getString("node-id");
588-
currentNodeId = configBean.getStringProperty(ConfigProperties.NODE_ID);
589-
590-
if (nodeId.equals(currentNodeId)) {
591-
licenseBean.revokeLicense();
592-
try {
593-
return new JSONObject(JsonMessages.SUCCESS_ACKNOWLEDGEMENT);
594-
} catch (JSONException ex) {
595-
logger.error(null, ex);
596-
throw new OperationException(ErrorCode.INTERNAL_OPERATION_ERROR);
597-
}
598-
}
599485

600-
//TODO: broadcast the query so that only the specified node executes it.
601-
} catch (JSONException ex) {
602-
logger.error(null, ex);
603-
throw new OperationException(ErrorCode.INTERNAL_OPERATION_ERROR);
604-
}
605-
606-
throw new OperationException(ErrorCode.UNKNOWN_NODE_ID);
607-
}
608-
609486
private JSONObject bulkExport(final String app, final String table, final JSONObject payloadJson) throws OperationException {
610487
JSONObject jsonObject = new JSONObject();
611488
final String exportType;

engine/src/main/java/com/blobcity/db/bquery/BQueryExecutorBean.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@
3434
import com.blobcity.db.lang.Operators;
3535
import com.blobcity.db.lang.columntypes.FieldType;
3636
import com.blobcity.db.lang.columntypes.FieldTypeFactory;
37-
import com.blobcity.db.license.LicenseBean;
3837
import com.blobcity.db.locks.MasterLockBean;
3938
import com.blobcity.db.locks.TransactionLocking;
4039
import com.blobcity.db.operations.OperationLogLevel;
@@ -58,7 +57,6 @@
5857
import com.blobcity.lib.query.QueryParams;
5958
import com.blobcity.lib.query.RecordType;
6059
import com.blobcity.util.json.JsonMessages;
61-
import com.blobcity.util.json.JsonUtil;
6260
import com.google.common.io.Files;
6361
import com.google.gson.Gson;
6462

@@ -113,9 +111,6 @@ public class BQueryExecutorBean implements BQueryExecutor {
113111
private BSqlIndexManager indexManager;
114112
@Autowired(required = false)
115113
@Lazy
116-
private LicenseBean licenseBean;
117-
@Autowired(required = false)
118-
@Lazy
119114
private ManifestParserBean manifestParserBean;
120115
@Autowired(required = false)
121116
@Lazy

engine/src/main/java/com/blobcity/db/bquery/ConsoleExecutorBean.java

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -25,16 +25,13 @@
2525
import com.blobcity.db.code.CodeExecutor;
2626
import com.blobcity.db.code.CodeLoader;
2727
import com.blobcity.db.config.ConfigBean;
28-
import com.blobcity.db.config.ConfigProperties;
29-
import com.blobcity.db.constants.License;
3028
import com.blobcity.db.exceptions.ErrorCode;
3129
import com.blobcity.db.exceptions.OperationException;
3230
import com.blobcity.db.export.ExportType;
3331
import com.blobcity.db.ftp.FtpServiceManager;
3432
import com.blobcity.db.lang.columntypes.FieldType;
3533
import com.blobcity.db.lang.columntypes.FieldTypeFactory;
36-
import com.blobcity.db.license.LicenseBean;
37-
import com.blobcity.db.license.LicenseRules;
34+
import com.blobcity.db.features.FeatureRules;
3835
import com.blobcity.db.mapreduce.MapReduceExecutor;
3936
import com.blobcity.db.mapreduce.MapReduceJobManager;
4037
import com.blobcity.db.mapreduce.MapReduceOutputImporter;
@@ -124,8 +121,6 @@ public class ConsoleExecutorBean implements ConsoleExecutor {
124121
@Autowired @Lazy
125122
private BSqlIndexManager indexManager;
126123
@Autowired @Lazy
127-
private LicenseBean licenseBean;
128-
@Autowired @Lazy
129124
private BSqlMemoryManagerOld memoryManager;
130125
@Autowired @Lazy
131126
private MapReduceExecutor mapReduceExecutor;
@@ -194,7 +189,7 @@ public String runCommand(final String user, String query) {
194189
logger.debug("Console Query (" + queryId + "): " + query);
195190

196191
/* Check if the user is not root and is attempt to execute a root user only operation */
197-
if(!LicenseRules.BYPASS_ROOT_ONLY && !user.equals("root")){
192+
if(!FeatureRules.BYPASS_ROOT_ONLY && !user.equals("root")){
198193
switch(elements[0]) {
199194
case "list-ds":
200195
case "add-node":
@@ -225,9 +220,6 @@ public String runCommand(final String user, String query) {
225220
case "node-id":
226221
response = nodeId(elements);
227222
break;
228-
case "apply-license":
229-
response = applyLicense(elements);
230-
break;
231223
case "cluster-status":
232224
response = clusterStatus();
233225
break;
@@ -601,12 +593,6 @@ private String addNode(String[] elements) throws OperationException {
601593
}
602594
}
603595

604-
private String applyLicense(String[] elements) throws OperationException {
605-
String license = elements[1];
606-
licenseBean.applyLicense(license);
607-
return "License applied";
608-
}
609-
610596
private String clusterStatus() {
611597
String status = "node-id | name | IP | status\n";
612598
status += UUID.randomUUID().toString() + " | node 1 | localhost1 | up\n";
@@ -1048,7 +1034,7 @@ private String listCode(String[] elements) throws OperationException {
10481034
}
10491035

10501036
private String listDS(String[] elements) throws OperationException {
1051-
if(!LicenseRules.ALLOW_LIST_DS) {
1037+
if(!FeatureRules.ALLOW_LIST_DS) {
10521038
throw new OperationException(ErrorCode.FEATURE_RESTRICTED, "you do not have necessary permissions to run list-ds");
10531039
}
10541040

@@ -1079,10 +1065,6 @@ private String nodeId(String[] elements) throws OperationException {
10791065
}
10801066

10811067
private String queryStats(String[] elements) throws OperationException {
1082-
if (!LicenseRules.CLI_QUERY_ANALYSER) {
1083-
throw new OperationException(ErrorCode.FEATURE_RESTRICTED);
1084-
}
1085-
10861068
if (elements.length == 1) {
10871069
throw new OperationException(ErrorCode.INVALID_QUERY_FORMAT, "Database name missing");
10881070
}

engine/src/main/java/com/blobcity/db/bquery/SQLExecutorBean.java

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
import com.blobcity.db.bsql.BSqlCollectionManager;
2525
import com.blobcity.db.exceptions.ErrorCode;
2626
import com.blobcity.db.exceptions.OperationException;
27-
import com.blobcity.db.license.LicenseBean;
2827
import com.blobcity.db.util.JSONOperationException;
2928
import com.blobcity.lib.database.bean.manager.interfaces.engine.SqlExecutor;
3029
import com.foundationdb.sql.StandardException;
@@ -56,8 +55,6 @@ public class SQLExecutorBean implements SqlExecutor {
5655
@Autowired @Lazy
5756
private BSqlCollectionManager collectionManager;
5857
@Autowired
59-
private LicenseBean licenseBean;
60-
@Autowired
6158
private SecurityManagerBean securityManager;
6259
// Statement Executors---------------------------------------------------------------------------------------------
6360
@Autowired @Lazy
@@ -163,10 +160,6 @@ private String runQuery(final String requestId, final String datastore, final St
163160
}
164161

165162
// Setters for EJBs (used for setting mocks in unit tests ---------------------------------------------------------
166-
public void setLicenseBean(LicenseBean licenseBean) {
167-
this.licenseBean = licenseBean;
168-
}
169-
170163
public void setTableManager(BSqlCollectionManager tableManager) {
171164
this.collectionManager = tableManager;
172165
}

engine/src/main/java/com/blobcity/db/bquery/internal/statements/InternalBQueryExecutor.java

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,7 @@
2222
import com.blobcity.db.constants.BQueryParameters;
2323
import com.blobcity.db.exceptions.ErrorCode;
2424
import com.blobcity.db.exceptions.OperationException;
25-
import com.blobcity.db.lang.columntypes.StringField;
26-
import com.blobcity.db.license.LicenseRules;
27-
import com.blobcity.db.schema.AutoDefineTypes;
28-
import com.blobcity.db.schema.IndexTypes;
2925
import com.blobcity.db.schema.Schema;
30-
import com.blobcity.db.schema.Types;
3126
import com.blobcity.db.schema.beans.SchemaStore;
3227
import com.blobcity.util.json.JsonMessages;
3328
import java.util.Set;
@@ -112,7 +107,7 @@ private JSONObject insert(final String datastore, final String collection, final
112107
Schema schema = SchemaStore.getInstance().getSchema(datastore, collection);
113108

114109
/* If schema is flexible, add any missing columns before performing the insert operation */
115-
if(LicenseRules.FLEXIBLE_SCHEMA && schema.isFlexibleSchema()) {
110+
if(schema.isFlexibleSchema()) {
116111
Set<String> missingColumnNames = schema.getMissingColumnNames(insertJSON.keySet());
117112
for (String missingColumnName : missingColumnNames) {
118113

engine/src/main/java/com/blobcity/db/bsql/BSqlCollectionManager.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
package com.blobcity.db.bsql;
1818

1919
import com.blobcity.db.constants.BSql;
20-
import com.blobcity.db.constants.License;
2120
import com.blobcity.db.data.RowCountManager;
2221
import com.blobcity.db.exceptions.ErrorCode;
2322
import com.blobcity.db.exceptions.OperationException;
@@ -26,10 +25,8 @@
2625
import com.blobcity.db.indexing.IndexingStrategy;
2726
import com.blobcity.db.lang.columntypes.FieldType;
2827
import com.blobcity.db.lang.columntypes.FieldTypeFactory;
29-
import com.blobcity.db.license.LicenseRules;
3028
import com.blobcity.db.memory.collection.MemCollection;
3129
import com.blobcity.db.memory.collection.MemCollectionStoreBean;
32-
import com.blobcity.db.memory.old.MemoryTable;
3330
import com.blobcity.db.memory.old.MemoryTableStore;
3431
import com.blobcity.db.operations.OperationLogLevel;
3532
import com.blobcity.db.schema.*;
@@ -52,7 +49,6 @@
5249
import org.slf4j.LoggerFactory;
5350
import org.springframework.beans.factory.annotation.Autowired;
5451
import org.springframework.context.annotation.Lazy;
55-
import org.springframework.expression.Operation;
5652
import org.springframework.stereotype.Component;
5753

5854
/**

0 commit comments

Comments
 (0)