protected function releaseLock(): bool
	{
		if (! $this->lock)
		{
			return true;
		}

		if ($this->platform === 'mysql')
		{
			if ($this->db->query("SELECT RELEASE_LOCK('{$this->lock}') AS ci_session_lock")->getRow()->ci_session_lock)
			{
				$this->lock = false;
				return true;
			}

			return $this->fail();
		}
		elseif ($this->platform === 'postgre')
		{
			if ($this->db->simpleQuery("SELECT pg_advisory_unlock({$this->lock})"))
			{
				$this->lock = false;
				return true;
			}

			return $this->fail();
		}

		// Unsupported DB? Let the parent handle the simple version.
		return parent::releaseLock();
	}
protected function releaseLock(): bool
	{
		if (! $this->lock)
		{
			return true;
		}

		if ($this->platform === 'mysql')
		{
			if ($this->db->query("SELECT RELEASE_LOCK('{$this->lock}') AS ci_session_lock")->getRow()->ci_session_lock)
			{
				$this->lock = false;
				return true;
			}

			return $this->fail();
		}
		elseif ($this->platform === 'postgre')
		{
			if ($this->db->simpleQuery("SELECT pg_advisory_unlock({$this->lock})"))
			{
				$this->lock = false;
				return true;
			}

			return $this->fail();
		}

		// Unsupported DB? Let the parent handle the simple version.
		return parent::releaseLock();
	}
protected function releaseLock ( ) : bool { if ( ! $ this -> lock ) { return true ; } if ( $ this -> platform === 'mysql' ) { if ( $ this -> db -> query ( "SELECT RELEASE_LOCK('{$this->lock}') AS ci_session_lock" ) -> getRow ( ) -> ci_session_lock ) { $ this -> lock = false ; return true ; } return $ this -> fail ( ) ; } elseif ( $ this -> platform === 'postgre' ) { if ( $ this -> db -> simpleQuery ( "SELECT pg_advisory_unlock({$this->lock})" ) ) { $ this -> lock = false ; return true ; } return $ this -> fail ( ) ; } // Unsupported DB? Let the parent handle the simple version. return parent :: releaseLock ( ) ; }
Releases the lock, if any.

@return boolean
Releases the lock if any .