private void insertLibrary(DescriptionManager manager, ExecutableRecord exeRecord)
			throws ElasticException {
		RowKeyElastic eKey = updateKey(manager, exeRecord);
		String exeId = eKey.generateExeIdString();
		insertExecutableRecord(exeRecord, exeId);		// May or may not already be inserted, doesn't matter

		Iterator<FunctionDescription> iter = manager.listFunctions(exeRecord);
		while (iter.hasNext()) {
			insertFunctionRange(manager, exeRecord, eKey, exeId, iter, MAX_FUNCTION_BULK);		// Insert functions some of which may already be inserted
		}
	}
Insert a library executable and all the functions it contains into the database.
The executable must be a library. The routine will complete successfully even if
the executable or some of its functions have been inserted before.
@param manager is container of the executable
@param exeRecord is the ExecutableRecord describing the library
@throws ElasticException for communication problems with the server
Ghidra/Features/BSim/src/main/java/ghidra/features/bsim/query/elastic/ElasticDatabase.java