Browse Source

创建索引时可指定是否开启实时更新

sunyj 8 years ago
parent
commit
737e345930

+ 2 - 2
search-console-b2b/src/main/java/com/uas/search/console/b2b/controller/IndexController.java

@@ -36,7 +36,7 @@ public class IndexController {
 
 
 	@RequestMapping("/create")
 	@RequestMapping("/create")
 	@ResponseBody
 	@ResponseBody
-	public String createIndexs(String tableNames, Boolean fromFiles) {
+	public String createIndexs(String tableNames, Boolean fromFiles, Boolean ifStartListener) {
 		List<Table_name> tableNameList = null;
 		List<Table_name> tableNameList = null;
 		if (!StringUtils.isEmpty(tableNames)) {
 		if (!StringUtils.isEmpty(tableNames)) {
 			String[] strs = tableNames.split(",");
 			String[] strs = tableNames.split(",");
@@ -46,7 +46,7 @@ public class IndexController {
 			}
 			}
 		}
 		}
 		return String.format("Indexes created success in %.2fs",
 		return String.format("Indexes created success in %.2fs",
-				indexService.createIndexes(tableNameList, fromFiles) / 1000.0);
+				indexService.createIndexes(tableNameList, fromFiles, ifStartListener) / 1000.0);
 	}
 	}
 
 
 	@RequestMapping("/downloadData")
 	@RequestMapping("/downloadData")

+ 3 - 1
search-console-b2b/src/main/java/com/uas/search/console/b2b/service/IndexService.java

@@ -23,9 +23,11 @@ public interface IndexService {
 	 *            可为空,指定的表,默认创建所有表的索引
 	 *            可为空,指定的表,默认创建所有表的索引
 	 * @param fromFiles
 	 * @param fromFiles
 	 *            可为空,索引数据是否来自文件,默认来自文件
 	 *            可为空,索引数据是否来自文件,默认来自文件
+	 * @param ifStartListener
+	 *            可为空,是否开启实时更新,默认开启
 	 * @return 创建的索引花费总时间 ms
 	 * @return 创建的索引花费总时间 ms
 	 */
 	 */
-	public Long createIndexes(List<Table_name> tableNames, Boolean fromFiles);
+	public Long createIndexes(List<Table_name> tableNames, Boolean fromFiles, Boolean ifStartListener);
 
 
 	/**
 	/**
 	 * 下载指定表的数据至本地文件中,以供建索引用
 	 * 下载指定表的数据至本地文件中,以供建索引用

+ 4 - 1
search-console-b2b/src/main/java/com/uas/search/console/b2b/service/impl/IndexServiceImpl.java

@@ -91,7 +91,7 @@ public class IndexServiceImpl implements IndexService {
 	private static IndexWriterManager indexWriterManager = new IndexWriterManager();
 	private static IndexWriterManager indexWriterManager = new IndexWriterManager();
 
 
 	@Override
 	@Override
-	public Long createIndexes(List<Table_name> tableNames, Boolean fromFiles) {
+	public Long createIndexes(List<Table_name> tableNames, Boolean fromFiles, Boolean ifStartListener) {
 		if (creatingIndex) {
 		if (creatingIndex) {
 			throw new SearchException("已存在线程在创建索引,不可重复请求");
 			throw new SearchException("已存在线程在创建索引,不可重复请求");
 		}
 		}
@@ -119,6 +119,9 @@ public class IndexServiceImpl implements IndexService {
 			throw new SearchException(e).setDetailedMessage(e);
 			throw new SearchException(e).setDetailedMessage(e);
 		} finally {
 		} finally {
 			creatingIndex = false;
 			creatingIndex = false;
+			if (ifStartListener == null || ifStartListener.booleanValue()) {
+				aqListener.start(null, null);
+			}
 		}
 		}
 		Long endTime = new Date().getTime();
 		Long endTime = new Date().getTime();
 		logger.info(String.format("索引创建成功, 共用时间%.2fs\n", (endTime - startTime) / 1000.0));
 		logger.info(String.format("索引创建成功, 共用时间%.2fs\n", (endTime - startTime) / 1000.0));

+ 1 - 1
search-console-b2b/src/main/java/com/uas/search/console/b2b/service/impl/UpdateVirtualColumnServiceImpl.java

@@ -141,7 +141,7 @@ public class UpdateVirtualColumnServiceImpl implements UpdateVirtualColumnServic
 		}
 		}
 		Long endTime = new Date().getTime();
 		Long endTime = new Date().getTime();
 		logger.info(String.format("修改数据%s条,耗时%.2fs\n ", totalElements, (endTime - startTime) / 1000.0));
 		logger.info(String.format("修改数据%s条,耗时%.2fs\n ", totalElements, (endTime - startTime) / 1000.0));
-		indexService.createIndexes(Arrays.asList(tableName), true);
+		indexService.createIndexes(Arrays.asList(tableName), true, true);
 		aqListener.start(null, null);
 		aqListener.start(null, null);
 	}
 	}
 
 

+ 1 - 1
search-console-b2b/src/main/webapp/WEB-INF/views/console.html

@@ -31,7 +31,7 @@
 
 
 			<strong><li class="title">索引修改</li></strong>
 			<strong><li class="title">索引修改</li></strong>
 			<ol>
 			<ol>
-				<li><a target="_blank">index/create?tableNames=x,y&fromFiles=false</a></li>
+				<li><a target="_blank">index/create?tableNames=x,y&fromFiles=false&ifStartListener=false</a></li>
 				<li><a target="_blank">index/create?tableNames=x,y</a></li>
 				<li><a target="_blank">index/create?tableNames=x,y</a></li>
 				<li>index/create</li>
 				<li>index/create</li>
 				<li>index/create?fromFiles=false</li>
 				<li>index/create?fromFiles=false</li>

+ 1 - 1
search-console-b2b/src/main/webapp/resources/js/listenDetails/app.js

@@ -179,7 +179,7 @@ function updateIndex(tableName, ids, data, method, messageId, listItemDiv) {
 		data : {
 		data : {
 			"tableName" : tableName,
 			"tableName" : tableName,
 			"method" : method,
 			"method" : method,
-			"ids" : ids,
+			"ids" : ids.substring(1, ids.length - 1),
 			"data" : data
 			"data" : data
 		},
 		},
 		success : function(result) {
 		success : function(result) {