void process_select_requests()

in src/afs.cc [2690:2719]


	void process_select_requests()
	{
#ifdef AFS_VERBOSE
		const char* tag = "select";
#endif
		std::lock_guard<std::mutex> lock(mutex_);
		for (auto& request : selectRequests_)
		{
			request->finished = true;
			auto session = static_cast<SharedSessionData*>(
				dshash_find(sessions_, &(request->localSession->id), false));
			if (!session)
			{
				request->localSession->errorMessage =
					std::string("stolen session: ") +
					std::to_string(request->localSession->id);
				continue;
			}
			auto executorPID = session->executorPID;
			{
				SharedSessionReleaser sessionReleaser(sessions_, session);
				ProcessorLockGuard lock(this);
				set_shared_string(session->selectQuery, request->query);
				session->action = Action::Select;
			}
			P("%s: %s: %s: kill executor: %d", Tag, tag_, tag, executorPID);
			kill(executorPID, SIGUSR1);
		}
		selectRequests_.clear();
	}