Refine search
public Long addStock(String symbol) throws NotLoggedInException { Stock stock = new Stock(getUser(), symbol); checkLoggedIn(); PersistenceManager pm = getPersistenceManager(); try { pm.makePersistent(stock); } finally { pm.close(); } return stock.getId(); }
private boolean ensureDbInit() { Transaction tx = pm.currentTransaction(); boolean doCommit = false; if (!tx.isActive()) { initQueries.add(pm.newQuery(MDatabase.class, "name == ''")); initQueries.add(pm.newQuery(MTableColumnStatistics.class, "dbName == ''")); initQueries.add(pm.newQuery(MPartitionColumnStatistics.class, "dbName == ''")); initQueries.add(pm.newQuery(MConstraint.class, "childIntegerIndex < 0")); initQueries.add(pm.newQuery(MNotificationLog.class, "dbName == ''")); initQueries.add(pm.newQuery(MNotificationNextId.class, "nextEventId < -1")); initQueries.add(pm.newQuery(MWMResourcePlan.class, "name == ''")); initQueries.add(pm.newQuery(MCreationMetadata.class, "dbName == ''")); initQueries.add(pm.newQuery(MPartitionPrivilege.class, "principalName == ''")); initQueries.add(pm.newQuery(MPartitionColumnPrivilege.class, "principalName == ''")); Query q; while ((q = initQueries.peekFirst()) != null) { q.execute(); initQueries.pollFirst(); q.closeAll(); } catch (Throwable t) {
/** * Checks if a column descriptor has any remaining references by storage descriptors * in the db. If it does not, then delete the CD. If it does, then do nothing. * @param oldCD the column descriptor to delete if it is no longer referenced anywhere */ private void removeUnusedColumnDescriptor(MColumnDescriptor oldCD) { if (oldCD == null) { return; } boolean success = false; Query query = null; try { openTransaction(); LOG.debug("execute removeUnusedColumnDescriptor"); query = pm.newQuery("select count(1) from " + "org.apache.hadoop.hive.metastore.model.MStorageDescriptor where (this.cd == inCD)"); query.declareParameters("MColumnDescriptor inCD"); long count = ((Long)query.execute(oldCD)).longValue(); //if no other SD references this CD, we can throw it out. if (count == 0) { pm.retrieve(oldCD); pm.deletePersistent(oldCD); } success = commitTransaction(); LOG.debug("successfully deleted a CD in removeUnusedColumnDescriptor"); } finally { rollbackAndCleanup(success, query); } }
private MSerDeInfo getMSerDeInfo(String serDeName) throws MetaException { Query query = null; try { query = pm.newQuery(MSerDeInfo.class, "name == serDeName"); query.declareParameters("java.lang.String serDeName"); query.setUnique(true); MSerDeInfo mSerDeInfo = (MSerDeInfo)query.execute(serDeName); pm.retrieve(mSerDeInfo); return mSerDeInfo; } finally { if (query != null) { query.closeAll(); } } }
private void prepareQuotes() throws SQLException { if (dbType == DatabaseProduct.MYSQL) { assert pm.currentTransaction().isActive(); JDOConnection jdoConn = pm.getDataStoreConnection(); Statement statement = null; try { statement = ((Connection)jdoConn.getNativeConnection()).createStatement(); statement.execute("SET @@session.sql_mode=ANSI_QUOTES"); } finally { if(statement != null){ statement.close(); } jdoConn.close(); } } }
query = pm.newQuery(MTableColumnStatistics.class); String filter; String parameters; query.setFilter(filter); query.declareParameters(parameters); if (colName != null) { query.setUnique(true); mStatsObj = (MTableColumnStatistics) query.executeWithArray(normalizeIdentifier(tableName), normalizeIdentifier(catName), normalizeIdentifier(colName)); pm.retrieve(mStatsObj); pm.deletePersistent(mStatsObj); } else { throw new NoSuchObjectException("Column stats doesn't exist for db=" + dbName + " table=" normalizeIdentifier(dbName), normalizeIdentifier(catName)); pm.retrieveAll(mStatsObjColl); if (mStatsObjColl != null) { pm.deletePersistentAll(mStatsObjColl); } else { throw new NoSuchObjectException("Column stats doesn't exist for db=" + dbName + " table="
private PersistenceManager getPersistenceManager( PersistenceManagerFactory pmf ) { PersistenceManager pm = pmf.getPersistenceManager(); pm.getFetchPlan().setMaxFetchDepth( -1 ); pm.getFetchPlan().setDetachmentOptions( FetchPlan.DETACH_LOAD_FIELDS ); return pm; }
private boolean poolHasChildren(MWMResourcePlan resourcePlan, String poolPath) { boolean commited = false; Query query = null; try { openTransaction(); query = pm.newQuery(MWMPool.class, "resourcePlan == rp && path.startsWith(poolPath)"); query.declareParameters("MWMResourcePlan rp, java.lang.String poolPath"); query.setResult("count(this)"); query.setUnique(true); Long count = (Long) query.execute(resourcePlan, poolPath + "."); commited = commitTransaction(); return count != null && count > 0; } finally { rollbackAndCleanup(commited, query); } }
@Override public void cleanNotificationEvents(int olderThan) { boolean commited = false; Query query = null; try { openTransaction(); long tmp = System.currentTimeMillis() / 1000 - olderThan; int tooOld = (tmp > Integer.MAX_VALUE) ? 0 : (int) tmp; query = pm.newQuery(MNotificationLog.class, "eventTime < tooOld"); query.declareParameters("java.lang.Integer tooOld"); Collection<MNotificationLog> toBeRemoved = (Collection) query.execute(tooOld); if (CollectionUtils.isNotEmpty(toBeRemoved)) { pm.deletePersistentAll(toBeRemoved); } commited = commitTransaction(); } finally { rollbackAndCleanup(commited, query); } }
public <T> void deleteRecord(Class<T> type, T s) { PersistenceManager pm = PMF.get().getPersistenceManager(); try { T p = pm.getObjectById(type, s.getId()); pm.deletePersistent(p); } finally { pm.close(); } }
public Boolean addCommentToBle(Key systemKey, Comment comment) throws Exception { PersistenceManagerFactory PMF = PersistenceUtil.getPersistenceManagerFactory(); PersistenceManager pm = PMF.getPersistenceManager(); pm.currentTransaction().begin(); Ble ble= pm.getObjectById(Ble.class, systemKey); System.out.println(ble); ble.getComments().add(comment); pm.makePersistent(ble); pm.currentTransaction().commit(); return true; }
@Before public void beforeTest() { PersistenceManager pm = TestTools.openPM(); pm.currentTransaction().begin(); pm.newQuery(pm.getExtent(TestClass.class)).deletePersistentAll(); pm.newQuery(pm.getExtent(TestClassTiny.class)).deletePersistentAll(); pm.newQuery(pm.getExtent(TestClassTiny2.class)).deletePersistentAll(); pm.currentTransaction().commit(); TestTools.closePM(); }
@Override public List<Function> getAllFunctions(String catName) throws MetaException { boolean commited = false; Query query = null; try { openTransaction(); catName = normalizeIdentifier(catName); query = pm.newQuery(MFunction.class, "database.catalogName == catName"); query.declareParameters("java.lang.String catName"); List<MFunction> allFunctions = (List<MFunction>) query.execute(catName); pm.retrieveAll(allFunctions); commited = commitTransaction(); return convertToFunctions(allFunctions); } finally { rollbackAndCleanup(commited, query); } }
@Test public void testNewQueryExtentFilter() { PersistenceManager pm = TestTools.openPM(); pm.currentTransaction().begin(); Extent<?> ext = pm.getExtent(TestClass.class); Query q = pm.newQuery(ext, "_int >= 123"); List<?> c = (List<?>) q.execute(); assertEquals(3, c.size()); TestTools.closePM(pm); }
private Query createActivePlanQuery() { openTransaction(); Query query = pm.newQuery(MWMResourcePlan.class, "status == activeStatus && ns == nsname"); query.declareParameters("java.lang.String activeStatus, java.lang.String nsname"); query.setUnique(true); return query; }
private ObjectPair<Query, Map<String, String>> getPartQueryWithParams( String catName, String dbName, String tblName, List<String> partNames) { Query query = pm.newQuery(); Map<String, String> params = new HashMap<>(); String filterStr = getJDOFilterStrForPartitionNames(catName, dbName, tblName, partNames, params); query.setFilter(filterStr); LOG.debug(" JDOQL filter is {}", filterStr); query.declareParameters(makeParameterDeclarationString(params)); return new ObjectPair<>(query, params); }
@Override public void dropResourcePlan(String name, String ns) throws NoSuchObjectException, MetaException { name = normalizeIdentifier(name); boolean commited = false; Query query = null; try { query = createGetResourcePlanQuery(); MWMResourcePlan resourcePlan = (MWMResourcePlan) query.execute(name, getNsOrDefault(ns)); pm.retrieve(resourcePlan); // TODO: why do some codepaths call retrieve and some don't? if (resourcePlan == null) { throw new NoSuchObjectException("There is no resource plan named: " + name + " in " + ns); } if (resourcePlan.getStatus() == Status.ACTIVE) { throw new MetaException("Cannot drop an active resource plan"); } // First, drop all the dependencies. resourcePlan.setDefaultPool(null); pm.deletePersistentAll(resourcePlan.getTriggers()); pm.deletePersistentAll(resourcePlan.getMappings()); pm.deletePersistentAll(resourcePlan.getPools()); pm.deletePersistent(resourcePlan); commited = commitTransaction(); } finally { rollbackAndCleanup(commited, query); } }
public static void removeObject( PersistenceManager pm, Object o ) { Transaction tx = pm.currentTransaction(); try { tx.begin(); o = pm.getObjectById( pm.getObjectId( o ) ); pm.deletePersistent( o ); tx.commit(); } finally { rollbackIfActive( tx ); } }
@Override public List<HiveObjectPrivilege> listGlobalGrantsAll() { boolean commited = false; Query query = null; try { openTransaction(); query = pm.newQuery(MGlobalPrivilege.class); List<MGlobalPrivilege> userNameDbPriv = (List<MGlobalPrivilege>) query.execute(); pm.retrieveAll(userNameDbPriv); commited = commitTransaction(); return convertGlobal(userNameDbPriv); } finally { rollbackAndCleanup(commited, query); } }
@Override public void addRuntimeStat(RuntimeStat stat) throws MetaException { LOG.debug("runtimeStat: " + stat); MRuntimeStat mStat = MRuntimeStat.fromThrift(stat); boolean committed = false; openTransaction(); try { pm.makePersistent(mStat); committed = commitTransaction(); } finally { if (!committed) { rollbackTransaction(); } } }