public void afterDestroy(EntryEvent event) { eventId = ((InternalCacheEvent)event).getEventId(); if (receiver) { synchronized (EventIDVerificationInP2PDUnitTest.class) { gotCallback = true; EventIDVerificationInP2PDUnitTest.class.notify(); } } }
@Override protected void generateLocalFilterRouting(InternalCacheEvent event) { if (event.getLocalFilterInfo() == null) { super.generateLocalFilterRouting(event); } }
/** * @param event * @param eventID * @return true if the event should not be tracked, false otherwise */ private boolean ignoreEvent(InternalCacheEvent event, EventID eventID) { if (eventID == null) { return true; } else { boolean isVersioned = (event.getVersionTag() != null); boolean isClient = event.hasClientOrigin(); if (isVersioned && isClient) { return false; // version tags for client events are kept for retries by the client } boolean isEntry = event.getOperation().isEntry(); boolean isPr = event.getRegion().getAttributes().getDataPolicy().withPartitioning() || ((LocalRegion)event.getRegion()).isUsedForPartitionedRegionBucket(); return (!isClient && // ignore if it originated on a server, and isEntry && // it affects an entry and !isPr); // is not on a PR } }
EventID eventID = event.getEventId(); VersionTag tag = event.getVersionTag(); if (tag == null) { return; eventID, tag, event.getOperation()); RegionVersionVector v = ((LocalRegion)event.getRegion()).getVersionVector(); bulkOpTracker.putVersionTag(eventID, event.getVersionTag()); retry = false;
return entry.event; LocalRegion region = (LocalRegion)this.event.getRegion(); EntryEventImpl ev = EntryEventImpl.create( region, entry.getOp(), entry.getKey(), null/* value */, this.event.getCallbackArgument(), false /* originRemote */, this.event.getDistributedMember(), this.event.isGenerateCallbacks(), entry.getEventID()); boolean returnedEv = false;
final boolean isTraceEnabled = logger.isTraceEnabled(); FilterInfo filterInfo = event.getLocalFilterInfo(); FilterProfile regionProfile = ((LocalRegion)event.getRegion()).getFilterProfile(); if (filterInfo != null) { logger.trace("Event isOriginRemote={}", event.isOriginRemote()); Set<Object>rawIDs = regionProfile.getRealClientIDs(filterInfo.getInterestedClientsInv()); Set<ClientProxyMembershipID> ids = getProxyIDs(rawIDs, true); if (ids.remove(event.getContext())) { // don't send to member of origin CacheClientProxy ccp = getClientProxy(event.getContext()); if (ccp != null) { ccp.getStatistics().incMessagesNotQueuedOriginator(); Set<Object>rawIDs = regionProfile.getRealClientIDs(filterInfo.getInterestedClients()); Set<ClientProxyMembershipID> ids = getProxyIDs(rawIDs, true); if (ids.remove(event.getContext())) { // don't send to member of origin CacheClientProxy ccp = getClientProxy(event.getContext()); if (ccp != null) { ccp.getStatistics().incMessagesNotQueuedOriginator();
RegionAttributes attr = this.event.getRegion().getAttributes(); if (attr.getConcurrencyChecksEnabled() && !attr.getDataPolicy().withReplication() this.removeAllData, this.removeAllDataSize); if (success) { m.callbackArg = this.event.getCallbackArgument(); m.removeAllData = new RemoveAllEntryData[0]; m.removeAllDataSize = 0; m.skipCallbacks = !event.isGenerateCallbacks(); logger.trace("Found these remaining versioned entries: {}", Arrays.toString(versioned)); m.callbackArg = this.event.getCallbackArgument(); m.removeAllData = versioned; m.removeAllDataSize = versioned.length; m.skipCallbacks = !event.isGenerateCallbacks(); return; m.callbackArg = this.event.getCallbackArgument(); m.removeAllData = this.removeAllData; m.removeAllDataSize = this.removeAllDataSize; m.skipCallbacks = !event.isGenerateCallbacks();
EventID eventID = event.getEventId(); VersionTag tag = event.getVersionTag(); if (tag == null) { return; RegionVersionVector v = ((LocalRegion)event.getRegion()).getVersionVector(); putAllTracker.putVersionTag(eventID, event.getVersionTag()); retry = false;
boolean isEntryEvent = event.getOperation().isEntry(); EntryEventImpl entryEvent = isEntryEvent? (EntryEventImpl)event : null; FilterInfo routing = event.getLocalFilterInfo(); boolean lockForCQ = false; Object re = null; routing = fp.getLocalFilterRouting(event); event.setLocalFilterInfo(routing); if (routing != null && event.getOperation().isEntry() && ((EntryEventImpl)event).isConcurrencyConflict()) { if(logger.isDebugEnabled()) {
/** * generate version tag if it does not exist and set it into the event. * @param event * @param entry */ public void generateAndSetVersionTag(InternalCacheEvent event, RegionEntry entry) { if (entry != null && event.getOperation().isEntry()) { generateAndSetVersionTag((EntryEventImpl)event, entry); } }
(LocalRegion)this.event.getRegion(), entry.getOp(), this.event.getDistributedMember(), this.event.isGenerateCallbacks(), entry.getEventID()); boolean returnedEv = false;
private void removeDestroyTokensFromCqResultKeys(InternalCacheEvent event, FilterInfo filterInfo){ FilterProfile regionProfile = ((LocalRegion)event.getRegion()).getFilterProfile(); if (event.getOperation().isEntry() && filterInfo.getCQs() != null) { EntryEventImpl entryEvent = (EntryEventImpl)event; for (Map.Entry<Long, Integer> e: filterInfo.getCQs().entrySet()) { Long cqID = e.getKey(); String cqName = regionProfile.getRealCqID(cqID); if (cqName != null) { ServerCQ cq = regionProfile.getCq(cqName); if (cq != null && e.getValue().equals(Integer.valueOf(MessageType.LOCAL_DESTROY))) { cq.removeFromCqResultKeys(entryEvent.getKey(), true); } } } } }
EntryEventImpl entryEvent = event.getOperation().isEntry()? getEvent() : null; this.event.setLocalFilterInfo(filterInfo); && event.getOperation().isEntry()) { PartitionMessage pm = ((EntryEventImpl)event).getPartitionMessage(); if (pm != null event.setLocalFilterInfo(filterInfo);
if (event.getOperation().isCreate()) { if (logger.isDebugEnabled()) { logger.debug("invoking listeners: " + Arrays.toString(listeners)); if (!event.isGenerateCallbacks()) { return;
protected final DistributedRegion getRegion() { return (DistributedRegion)this.event.getRegion(); }
@Override protected CacheOperationMessage createMessage() { if (this.event.hasClientOrigin()) { DestroyWithContextMessage msgwithContxt = new DestroyWithContextMessage(event); msgwithContxt.context = ((EntryEventImpl)this.event).getContext(); return msgwithContxt; } else { return new DestroyMessage(event); } }
private ClientUpdateMessageImpl constructClientMessage(InternalCacheEvent event){ ClientUpdateMessageImpl clientMessage = null; EnumListenerEvent operation = event.getEventType(); try { clientMessage = initializeMessage(operation, event); } catch (Exception e) { logger.fatal(LocalizedMessage.create(LocalizedStrings.CacheClientNotifier_CANNOT_NOTIFY_CLIENTS_TO_PERFORM_OPERATION_0_ON_EVENT_1, new Object[] { operation, event}), e); } return clientMessage; }
EventID eventID = event.getEventId(); if (ignoreEvent(event, eventID)) { return; // not tracked LocalRegion lr = (LocalRegion)event.getRegion(); tag = event.getVersionTag(); RegionVersionVector v = ((LocalRegion)event.getRegion()).getVersionVector(); && (event.getOperation().isPutAll() || event.getOperation().isRemoveAll()) && lr.getServerProxy() == null) { recordBulkOpEvent(event, membershipID);
return entry.event; LocalRegion region = (LocalRegion)this.event.getRegion(); EntryEventImpl ev = EntryEventImpl.create( region, entry.getOp(), entry.getKey(), null/* value */, this.event.getCallbackArgument(), false /* originRemote */, this.event.getDistributedMember(), this.event.isGenerateCallbacks(), entry.getEventID()); boolean returnedEv = false;
private void singletonNotifyClients(InternalCacheEvent event, ClientUpdateMessage cmsg){ FilterInfo filterInfo = event.getLocalFilterInfo(); FilterProfile regionProfile = ((LocalRegion)event.getRegion()).getFilterProfile(); if (filterInfo != null) { _logger.finer("Event isOriginRemote=" + event.isOriginRemote()); Set<Object>rawIDs = regionProfile.getRealClientIDs(filterInfo.getInterestedClientsInv()); Set<ClientProxyMembershipID> ids = getProxyIDs(rawIDs, true); ids.remove(event.getContext()); // don't send to member of origin if (!ids.isEmpty()) { if (this._logger.finerEnabled()) { Set<Object>rawIDs = regionProfile.getRealClientIDs(filterInfo.getInterestedClients()); Set<ClientProxyMembershipID> ids = getProxyIDs(rawIDs, true); ids.remove(event.getContext()); // don't send to member of origin if (!ids.isEmpty()) { if (this._logger.finerEnabled()) {