|
pazpar2
1.6.30
|
high-level logic; mostly user sessions and settings More...
#include <time.h>#include <stdlib.h>#include <stdio.h>#include <string.h>#include <signal.h>#include <ctype.h>#include <assert.h>#include <math.h>#include <yaz/marcdisp.h>#include <yaz/comstack.h>#include <yaz/tcpip.h>#include <yaz/proto.h>#include <yaz/readconf.h>#include <yaz/pquery.h>#include <yaz/otherinfo.h>#include <yaz/yaz-util.h>#include <yaz/nmem.h>#include <yaz/query-charset.h>#include <yaz/querytowrbuf.h>#include <yaz/oid_db.h>#include <yaz/snprintf.h>#include <yaz/timing.h>#include "ppmutex.h"#include "parameters.h"#include "session.h"#include "eventl.h"#include "http.h"#include "termlists.h"#include "reclists.h"#include "relevance.h"#include "database.h"#include "client.h"#include "settings.h"#include "normalize7bit.h"#include <libxml/tree.h>Go to the source code of this file.
Data Structures | |
| struct | client_list |
Macros | |
| #define | USE_TIMING 1 |
| #define | MAX_CHUNK 15 |
| #define | MAX(a, b) ((a)>(b)?(a):(b)) |
| #define | MAX_XSLT_ARGS 16 |
Functions | |
| static int | session_use (int delta) |
| int | sessions_count (void) |
| int | session_count_total (void) |
| static void | log_xml_doc (xmlDoc *doc) |
| static void | session_enter (struct session *s, const char *caller) |
| static void | session_leave (struct session *s, const char *caller) |
| static void | session_normalize_facet (struct session *s, const char *type, const char *value, WRBUF display_wrbuf, WRBUF facet_wrbuf) |
| void | add_facet (struct session *s, const char *type, const char *value, int count) |
| static xmlDoc * | record_to_xml (struct session *se, struct session_database *sdb, const char *rec) |
| static void | insert_settings_parameters (struct session_database *sdb, struct conf_service *service, char **parms, NMEM nmem) |
| static void | insert_settings_values (struct session_database *sdb, xmlDoc *doc, struct conf_service *service) |
| static xmlDoc * | normalize_record (struct session *se, struct session_database *sdb, struct conf_service *service, const char *rec, NMEM nmem) |
| void | session_settings_dump (struct session *se, struct session_database *db, WRBUF w) |
| const char * | session_setting_oneval (struct session_database *db, int offset) |
| static int | prepare_map (struct session *se, struct session_database *sdb) |
| static void | session_watch_cancel (void *data, struct http_channel *c, void *data2) |
| int | session_set_watch (struct session *s, int what, session_watchfun fun, void *data, struct http_channel *chan) |
| void | session_alert_watch (struct session *s, int what) |
| static void | select_targets_callback (struct session *se, struct session_database *db) |
| static void | session_reset_active_clients (struct session *se, struct client_list *new_list) |
| static void | session_remove_cached_clients (struct session *se) |
| static int | select_targets (struct session *se, const char *filter) |
| int | session_active_clients (struct session *s) |
| int | session_is_preferred_clients_ready (struct session *s) |
| static void | session_clear_set (struct session *se, struct reclist_sortparms *sp) |
| static void | session_sort_unlocked (struct session *se, struct reclist_sortparms *sp) |
| void | session_sort (struct session *se, struct reclist_sortparms *sp) |
| enum pazpar2_error_code | session_search (struct session *se, const char *query, const char *startrecs, const char *maxrecs, const char *filter, const char *limit, const char **addinfo, struct reclist_sortparms *sp) |
| static void | session_init_databases_fun (void *context, struct database *db) |
| static void | session_database_destroy (struct session_database *sdb) |
| void | session_init_databases (struct session *se) |
| static struct session_database * | load_session_database (struct session *se, char *id) |
| static struct session_database * | find_session_database (struct session *se, char *id) |
| void | session_apply_setting (struct session *se, char *dbname, char *setting, char *value) |
| void | session_destroy (struct session *se) |
| size_t | session_get_memory_status (struct session *session) |
| struct session * | new_session (NMEM nmem, struct conf_service *service, unsigned session_id) |
| const char * | client_get_suggestions_xml (struct client *cl, WRBUF wrbuf) |
| static struct hitsbytarget * | hitsbytarget_nb (struct session *se, int *count, NMEM nmem) |
| struct hitsbytarget * | get_hitsbytarget (struct session *se, int *count, NMEM nmem) |
| static int | cmp_ht (const void *p1, const void *p2) |
| static int | cmp_ht_approx (const void *p1, const void *p2) |
| static int | targets_termlist_nb (WRBUF wrbuf, struct session *se, int num, NMEM nmem, int version) |
| void | perform_termlist (struct http_channel *c, struct session *se, const char *name, int num, int version) |
| struct record_cluster * | show_single_start (struct session *se, const char *id, struct record_cluster **prev_r, struct record_cluster **next_r) |
| void | show_single_stop (struct session *se, struct record_cluster *rec) |
| int | session_fetch_more (struct session *se) |
| struct record_cluster ** | show_range_start (struct session *se, struct reclist_sortparms *sp, int start, int *num, int *total, Odr_int *sumhits, Odr_int *approx_hits, void(*show_records_ready)(void *data), struct http_channel *chan) |
| void | show_range_stop (struct session *se, struct record_cluster **recs) |
| void | statistics (struct session *se, struct statistics *stat) |
| static struct record_metadata * | record_metadata_init (NMEM nmem, const char *value, enum conf_metadata_type type, struct _xmlAttr *attr) |
| static int | get_mergekey_from_doc (xmlDoc *doc, xmlNode *root, const char *name, struct conf_service *service, WRBUF norm_wr) |
| static const char * | get_mergekey (xmlDoc *doc, struct client *cl, int record_no, struct conf_service *service, NMEM nmem) |
| static int | check_record_filter (xmlNode *root, struct session_database *sdb) |
| see if metadata for pz:recordfilter exists | |
| static int | ingest_to_cluster (struct client *cl, xmlDoc *xdoc, xmlNode *root, int record_no, const char *mergekey_norm) |
| int | ingest_record (struct client *cl, const char *rec, int record_no, NMEM nmem) |
| ingest XML record | |
| static int | match_metadata_local (struct conf_metadata *ser_md, struct record_metadata *rec_md0, char **values, int num_v) |
| int | session_check_cluster_limit (struct session *se, struct record_cluster *rec) |
| static int | check_limit_local (struct client *cl, struct record *record, int record_no) |
| void | session_log (struct session *s, int level, const char *fmt,...) |
Variables | |
| struct parameters | global_parameters |
| static YAZ_MUTEX | g_session_mutex = 0 |
| static int | no_sessions = 0 |
| static int | no_session_total = 0 |
high-level logic; mostly user sessions and settings
Definition in file session.c.
| #define MAX | ( | a, | |
| b | |||
| ) | ((a)>(b)?(a):(b)) |
Definition at line 82 of file session.c.
Referenced by ingest_to_cluster().
| #define MAX_XSLT_ARGS 16 |
Definition at line 273 of file session.c.
Referenced by insert_settings_parameters(), and normalize_record().
| void add_facet | ( | struct session * | s, |
| const char * | type, | ||
| const char * | value, | ||
| int | count | ||
| ) |
Definition at line 212 of file session.c.
References named_termlist::name, session::nmem, session::num_termlists, session_log(), SESSION_MAX_TERMLISTS, session_normalize_facet(), named_termlist::termlist, termlist_create(), termlist_insert(), and session::termlists.
Referenced by client_report_facets(), and ingest_to_cluster().
Definition at line 1773 of file session.c.
References client_get_database(), client_get_facet_limit_local(), client_get_session(), conf_service_metadata_field_id(), match_metadata_local(), record::metadata, conf_service::metadata, name, conf_service::num_metadata, and session::service.
Referenced by ingest_to_cluster().
|
static |
see if metadata for pz:recordfilter exists
| root | xml root element of normalized record |
| sdb | session database for client |
| 0 | if there is no metadata for pz:recordfilter |
| 1 | if there is metadata for pz:recordfilter |
If there is no pz:recordfilter defined, this function returns 1 as well.
Definition at line 1580 of file session.c.
References PZ_RECORDFILTER, session_setting_oneval(), and conf_metadata::type.
Referenced by ingest_record().
| const char* client_get_suggestions_xml | ( | struct client * | cl, |
| WRBUF | wrbuf | ||
| ) |
Definition at line 1633 of file client.c.
References suggestions::num, suggestions::passthrough, and client::suggestions.
Referenced by hitsbytarget_nb().
|
static |
Definition at line 1042 of file session.c.
References hitsbytarget::hits.
Referenced by targets_termlist_nb().
|
static |
Definition at line 1050 of file session.c.
References hitsbytarget::approximation.
Referenced by targets_termlist_nb().
|
staticread |
Definition at line 872 of file session.c.
References session_database::database, session::databases, database::id, load_session_database(), and session_database::next.
Referenced by session_apply_setting().
|
read |
Definition at line 1032 of file session.c.
References hitsbytarget_nb(), session_enter(), and session_leave().
Referenced by bytarget_response().
|
static |
Definition at line 1503 of file session.c.
References conf_service::charsets, client_get_id(), get_mergekey_from_doc(), conf_metadata::mergekey, conf_service::metadata, Metadata_mergekey_no, Metadata_mergekey_required, conf_metadata::name, conf_service::num_metadata, pp2_charset_token_create(), pp2_charset_token_destroy(), pp2_charset_token_first(), and pp2_charset_token_next().
Referenced by ingest_record().
|
static |
Definition at line 1455 of file session.c.
References conf_service::charsets, pp2_charset_token_create(), pp2_charset_token_destroy(), pp2_charset_token_first(), pp2_charset_token_next(), and record_metadata_attr::value.
Referenced by get_mergekey().
|
staticread |
Definition at line 991 of file session.c.
References client::addinfo, hitsbytarget::approximation, client_list::client, client_get_approximation(), client_get_connection(), client_get_database(), client_get_diagnostic(), client_get_hits(), client_get_id(), client_get_num_records(), client_get_num_records_filtered(), client_get_state_str(), client_get_suggestions_xml(), session::clients_active, hitsbytarget::connected, hitsbytarget::diagnostic, hitsbytarget::filtered, hitsbytarget::hits, hitsbytarget::id, client::message, hitsbytarget::name, name, client_list::next, PZ_NAME, hitsbytarget::records, session_setting_oneval(), session_settings_dump(), hitsbytarget::settings_xml, hitsbytarget::state, and hitsbytarget::suggestions_xml.
Referenced by get_hitsbytarget(), and targets_termlist_nb().
| int ingest_record | ( | struct client * | cl, |
| const char * | rec, | ||
| int | record_no, | ||
| NMEM | nmem | ||
| ) |
ingest XML record
| cl | client holds the result set for record |
| rec | record buffer (0 terminated) |
| record_no | record position (1, 2, ..) |
| nmem | working NMEM |
| 0 | OK |
| -1 | failure |
| -2 | Filtered |
Definition at line 1647 of file session.c.
References check_record_filter(), client_get_database(), client_get_session(), session_database::database, get_mergekey(), database::id, ingest_to_cluster(), normalize_record(), session::relevance, session::service, session_enter(), session_leave(), and session_log().
Referenced by client_record_ingest().
|
static |
Definition at line 1829 of file session.c.
References add_facet(), conf_service::charsets, check_limit_local(), client_get_database(), client_get_hits(), client_get_maxrecs(), client_get_session(), client_has_facet(), conf_service_metadata_field_id(), record_metadata::data, session_database::database, data_types::disp, parameters::dump_records, database::id, data_types::max, MAX, conf_metadata::merge, record::metadata, record_cluster::metadata, conf_service::metadata, Metadata_merge_all, Metadata_merge_first, Metadata_merge_longest, Metadata_merge_range, Metadata_merge_unique, Metadata_sortkey_skiparticle, Metadata_type_year, data_types::min, conf_metadata::name, record_metadata::next, session::nmem, conf_service::num_metadata, conf_service::num_sortkeys, data_types::number, session::number_of_warnings_unknown_elements, session::number_of_warnings_unknown_metadata, pp2_charset_token_create(), pp2_charset_token_destroy(), pp2_charset_token_first(), pp2_charset_token_next(), pp2_get_sort(), PZ_TERMLIST_TERM_FACTOR, conf_metadata::rank, record_cluster::recid, session::reclist, reclist_insert(), record_create(), record_metadata_init(), session::relevance, relevance_countwords(), relevance_donerecord(), relevance_newrec(), session::service, session_log(), session_setting_oneval(), data_types::sort, conf_metadata::sortkey_offset, record_cluster::sortkeys, conf_service::sortkeys, conf_metadata::termlist, data_types::text, session::total_merged, session::total_records, conf_metadata::type, and conf_sortkey::type.
Referenced by ingest_record().
|
static |
Definition at line 276 of file session.c.
References MAX_XSLT_ARGS, conf_service::metadata, Metadata_setting_parameter, conf_metadata::name, conf_service::num_metadata, session_setting_oneval(), conf_metadata::setting, and settings_lookup_offset().
Referenced by normalize_record().
|
static |
Definition at line 313 of file session.c.
References conf_service::metadata, Metadata_setting_postproc, conf_metadata::name, conf_service::num_metadata, session_setting_oneval(), conf_metadata::setting, and settings_lookup_offset().
Referenced by normalize_record().
|
staticread |
Definition at line 861 of file session.c.
References session::databases, new_database_inherit_settings(), session::service, session_init_databases_fun(), session::session_nmem, and conf_service::settings.
Referenced by find_session_database().
|
static |
Definition at line 133 of file session.c.
Referenced by normalize_record(), and record_to_xml().
|
static |
Definition at line 1688 of file session.c.
References record_metadata::data, data_types::disp, data_types::max, Metadata_type_date, Metadata_type_year, data_types::min, record_metadata::next, data_types::number, data_types::text, and conf_metadata::type.
Referenced by check_limit_local(), and session_check_cluster_limit().
|
read |
Definition at line 949 of file session.c.
References session::clients_active, session::clients_cached, session_watchentry::data, session::databases, session::facet_limits, session_watchentry::fun, session::nmem, session::normalize_cache, normalize_cache_create(), session::num_termlists, session::number_of_warnings_unknown_elements, session::number_of_warnings_unknown_metadata, pazpar2_mutex_create(), session::reclist, reclist_create(), session::relevance, session::service, session::session_id, session_log(), session::session_mutex, session::session_nmem, session_use(), SESSION_WATCH_MAX, session::settings_modified, session::sorted_results, session::total_records, and session::watchlist.
Referenced by http_session_create().
|
static |
Definition at line 338 of file session.c.
References session_database::database, parameters::dump_records, database::id, insert_settings_parameters(), insert_settings_values(), log_xml_doc(), session_database::map, MAX_XSLT_ARGS, normalize_record_transform(), record_to_xml(), and session_log().
Referenced by ingest_record().
| void perform_termlist | ( | struct http_channel * | c, |
| struct session * | se, | ||
| const char * | name, | ||
| int | num, | ||
| int | version | ||
| ) |
Definition at line 1107 of file session.c.
References termlist_score::display_term, termlist_score::frequency, named_termlist::name, http_channel::nmem, session::num_termlists, session_enter(), session_leave(), targets_termlist_nb(), named_termlist::termlist, termlist_highscore(), session::termlists, and http_channel::wrbuf.
Referenced by termlist_response().
|
static |
Definition at line 408 of file session.c.
References session_database::map, session::normalize_cache, normalize_cache_get(), PZ_REQUESTSYNTAX, PZ_XSLT, session::service, session_log(), session_setting_oneval(), and session_database::settings.
Referenced by session_search().
|
staticread |
Definition at line 1401 of file session.c.
References record_metadata::attributes, record_metadata::data, data_types::disp, extract7bit_dates(), data_types::max, Metadata_type_date, Metadata_type_generic, Metadata_type_year, data_types::min, record_metadata_attr::next, normalize7bit_generic(), data_types::number, record_metadata_create(), data_types::sort, and data_types::text.
Referenced by ingest_to_cluster().
|
static |
Definition at line 250 of file session.c.
References session_database::database, parameters::dump_records, database::id, log_xml_doc(), and session_log().
Referenced by normalize_record().
|
static |
Definition at line 595 of file session.c.
References select_targets_callback(), and session_grep_databases().
Referenced by session_search().
|
static |
Definition at line 514 of file session.c.
References client_list::client, client_create(), client_get_database(), client_set_database(), client_set_session(), session::clients_active, session::clients_cached, session_database::database, database::id, and client_list::next.
Referenced by select_targets().
| int session_active_clients | ( | struct session * | s | ) |
Definition at line 600 of file session.c.
References client_list::client, client_is_active(), session::clients_active, and client_list::next.
Referenced by client_set_state(), cmd_bytarget(), cmd_show(), cmd_stat(), cmd_termlist(), show_record(), show_records(), and termlist_response().
| void session_alert_watch | ( | struct session * | s, |
| int | what | ||
| ) |
Definition at line 484 of file session.c.
References session_watchentry::data, session_watchentry::fun, fun, http_remove_observer(), session_watchentry::obs, session_enter(), session_leave(), session_log(), and session::watchlist.
Referenced by client_check_preferred_watch(), client_got_records(), and client_set_state().
| void session_apply_setting | ( | struct session * | se, |
| char * | dbname, | ||
| char * | setting, | ||
| char * | value | ||
| ) |
Definition at line 884 of file session.c.
References expand_settings_array(), find_session_database(), session_database::map, session_database::num_settings, PZ_XSLT, session::service, session::session_nmem, session_database::settings, settings_create_offset(), session::settings_modified, and setting::value.
Referenced by apply_local_setting(), and process_settings().
| int session_check_cluster_limit | ( | struct session * | se, |
| struct record_cluster * | rec | ||
| ) |
Definition at line 1726 of file session.c.
References conf_service_metadata_field_id(), session::facet_limits, facet_limits_get(), conf_metadata::limitcluster, match_metadata_local(), record_cluster::metadata, conf_service::metadata, conf_metadata::name, name, conf_service::num_metadata, and session::service.
Referenced by reclist_limit().
|
static |
Definition at line 624 of file session.c.
References reclist_sortparms::increasing, reclist_sortparms::name, reclist_sortparms::next, session::nmem, session::num_termlists, session::reclist, reclist_create(), reclist_destroy(), session_log(), session::sorted_results, session::total_merged, session::total_records, and reclist_sortparms::type.
Referenced by session_search(), and session_sort_unlocked().
| int session_count_total | ( | void | ) |
Definition at line 122 of file session.c.
References g_session_mutex, and no_session_total.
|
static |
Definition at line 846 of file session.c.
References session_database::map.
Referenced by session_destroy().
| void session_destroy | ( | struct session * | se | ) |
Definition at line 916 of file session.c.
References session::databases, session::facet_limits, facet_limits_destroy(), session_database::next, session::nmem, session::normalize_cache, normalize_cache_destroy(), session::reclist, reclist_destroy(), session::relevance, relevance_destroy(), session::service, service_destroy(), session_database_destroy(), session_log(), session::session_mutex, session::session_nmem, session_remove_cached_clients(), and session_use().
Referenced by http_session_destroy(), and http_sessions_destroy().
|
static |
Definition at line 151 of file session.c.
References session_log(), and session::session_mutex.
Referenced by get_hitsbytarget(), ingest_record(), perform_termlist(), session_alert_watch(), session_get_memory_status(), session_remove_cached_clients(), session_reset_active_clients(), session_search(), session_set_watch(), show_range_start(), and show_single_start().
| int session_fetch_more | ( | struct session * | se | ) |
Definition at line 1233 of file session.c.
References client_list::client, client_fetch_more(), client_get_id(), client_get_state(), client_get_state_str(), Client_Idle, session::clients_active, client_list::next, and session_log().
Referenced by show_range_start().
| size_t session_get_memory_status | ( | struct session * | session | ) |
Definition at line 938 of file session.c.
References session::nmem, session_enter(), and session_leave().
Referenced by session_status().
| void session_init_databases | ( | struct session * | se | ) |
Definition at line 853 of file session.c.
References session::databases, predef_grep_databases(), session::service, and session_init_databases_fun().
Referenced by cmd_init().
|
static |
Definition at line 823 of file session.c.
References session::databases, setting::next, database::num_settings, session::session_nmem, database::settings, and session_database::settings.
Referenced by load_session_database(), and session_init_databases().
| int session_is_preferred_clients_ready | ( | struct session * | s | ) |
Definition at line 612 of file session.c.
References client_list::client, client_is_active_preferred(), session::clients_active, client_list::next, and session_log().
Referenced by client_check_preferred_watch(), and cmd_show().
|
static |
Definition at line 158 of file session.c.
References session_log(), and session::session_mutex.
Referenced by get_hitsbytarget(), ingest_record(), perform_termlist(), session_alert_watch(), session_get_memory_status(), session_remove_cached_clients(), session_reset_active_clients(), session_search(), session_set_watch(), show_range_stop(), show_single_start(), and show_single_stop().
| void session_log | ( | struct session * | s, |
| int | level, | ||
| const char * | fmt, | ||
| ... | |||
| ) |
Definition at line 2149 of file session.c.
References session::session_id.
Referenced by add_facet(), bytarget_response(), bytarget_result_ready(), client_parse_query(), client_record_ingest(), client_start_search(), cmd_bytarget(), cmd_init(), cmd_record_ready(), cmd_show(), cmd_termlist(), http_session_create(), http_session_destroy(), ingest_record(), ingest_to_cluster(), new_session(), normalize_record(), prepare_map(), record_to_xml(), session_alert_watch(), session_clear_set(), session_destroy(), session_enter(), session_fetch_more(), session_is_preferred_clients_ready(), session_leave(), session_normalize_facet(), session_search(), session_sort_unlocked(), show_range_start(), show_records_ready(), and termlist_result_ready().
|
static |
Definition at line 165 of file session.c.
References conf_service::charsets, conf_service::metadata, conf_service::num_metadata, pp2_charset_token_create(), pp2_charset_token_destroy(), pp2_charset_token_first(), pp2_charset_token_next(), pp2_get_display(), session::service, and session_log().
Referenced by add_facet().
|
static |
Definition at line 568 of file session.c.
References client_list::client, client_destroy(), client_lock(), client_set_database(), client_set_session(), client_unlock(), session::clients_cached, client_list::next, session_enter(), session_leave(), and session_reset_active_clients().
Referenced by session_destroy(), and session_search().
|
static |
Definition at line 545 of file session.c.
References client_list::client, client_lock(), client_set_session(), client_unlock(), session::clients_active, client_list::next, session_enter(), and session_leave().
Referenced by session_remove_cached_clients(), and session_search().
| enum pazpar2_error_code session_search | ( | struct session * | se, |
| const char * | query, | ||
| const char * | startrecs, | ||
| const char * | maxrecs, | ||
| const char * | filter, | ||
| const char * | limit, | ||
| const char ** | addinfo, | ||
| struct reclist_sortparms * | sp | ||
| ) |
Definition at line 727 of file session.c.
References client_list::client, client_get_database(), client_parse_init(), client_parse_query(), client_parse_range(), client_parse_sort(), client_start_search(), session::clients_active, session::facet_limits, facet_limits_create(), facet_limits_destroy(), client_list::next, PAZPAR2_MALFORMED_PARAMETER_VALUE, PAZPAR2_NO_ERROR, PAZPAR2_NO_TARGETS, prepare_map(), session::relevance, relevance_destroy(), select_targets(), session_clear_set(), session_enter(), session_leave(), session_log(), session_remove_cached_clients(), session_reset_active_clients(), and session::settings_modified.
Referenced by cmd_search().
| int session_set_watch | ( | struct session * | s, |
| int | what, | ||
| session_watchfun | fun, | ||
| void * | data, | ||
| struct http_channel * | chan | ||
| ) |
Definition at line 463 of file session.c.
References session_watchentry::data, session_watchentry::fun, fun, http_add_observer(), session_watchentry::obs, session_enter(), session_leave(), session_watch_cancel(), and session::watchlist.
Referenced by cmd_bytarget(), cmd_show(), cmd_termlist(), show_range_start(), and show_record().
| const char* session_setting_oneval | ( | struct session_database * | db, |
| int | offset | ||
| ) |
Definition at line 396 of file session.c.
References session_database::num_settings, session_database::settings, and setting::value.
Referenced by check_record_filter(), client_fetch_more(), client_parse_query(), client_prep_connection(), client_record_ingest(), client_send_raw_present(), client_show_raw_begin(), client_start_search(), connection_connect(), hitsbytarget_nb(), ingest_to_cluster(), insert_settings_parameters(), insert_settings_values(), prepare_map(), and write_subrecord().
| void session_settings_dump | ( | struct session * | se, |
| struct session_database * | db, | ||
| WRBUF | w | ||
| ) |
Definition at line 370 of file session.c.
References setting::name, setting::next, session_database::num_settings, session_database::settings, and setting::value.
Referenced by hitsbytarget_nb().
| void session_sort | ( | struct session * | se, |
| struct reclist_sortparms * | sp | ||
| ) |
Definition at line 720 of file session.c.
References session_sort_unlocked().
Referenced by cmd_show().
|
static |
Definition at line 647 of file session.c.
References client_list::client, Client_Connecting, client_get_id(), client_get_state(), Client_Idle, client_parse_init(), client_parse_sort(), client_start_search(), Client_Working, session::clients_active, reclist_sortparms::increasing, reclist_sortparms::name, reclist_sortparms::next, client_list::next, session::nmem, reclist_sortparms_cmp(), session_clear_set(), session_log(), session::sorted_results, and reclist_sortparms::type.
Referenced by session_sort().
|
static |
Definition at line 102 of file session.c.
References g_session_mutex, no_session_total, and no_sessions.
Referenced by new_session(), session_destroy(), and sessions_count().
|
static |
Definition at line 452 of file session.c.
References session_watchentry::data, session_watchentry::fun, and session_watchentry::obs.
Referenced by session_set_watch().
| int sessions_count | ( | void | ) |
Definition at line 117 of file session.c.
References session_use().
Referenced by cmd_server_status().
|
read |
Definition at line 1265 of file session.c.
References record::client, client_list::client, client_get_approximation(), client_get_hits(), client_update_show_stat(), session::clients_active, Metadata_sortkey_relevance, reclist_sortparms::next, record::next, client_list::next, session::nmem, session::reclist, reclist_enter(), reclist_get_num_records(), reclist_leave(), reclist_limit(), reclist_read_record(), reclist_sort(), record_cluster::records, session::relevance, relevance_prepare_read(), session_enter(), session_fetch_more(), session_log(), session_set_watch(), SESSION_WATCH_SHOW, show_range_stop(), show_records_ready(), and reclist_sortparms::type.
Referenced by show_records().
| void show_range_stop | ( | struct session * | se, |
| struct record_cluster ** | recs | ||
| ) |
Definition at line 1367 of file session.c.
References session_leave().
Referenced by show_range_start(), and show_records().
|
read |
Definition at line 1200 of file session.c.
References record_cluster::recid, session::reclist, reclist_enter(), reclist_leave(), reclist_limit(), reclist_read_record(), session_enter(), and session_leave().
Referenced by show_record().
| void show_single_stop | ( | struct session * | se, |
| struct record_cluster * | rec | ||
| ) |
| void statistics | ( | struct session * | se, |
| struct statistics * | stat | ||
| ) |
Definition at line 1372 of file session.c.
References client_list::client, Client_Connecting, Client_Error, Client_Failed, client_get_connection(), client_get_hits(), client_get_state(), Client_Idle, Client_Working, session::clients_active, client_list::next, statistics::num_clients, statistics::num_connecting, statistics::num_error, statistics::num_failed, statistics::num_hits, statistics::num_idle, statistics::num_no_connection, statistics::num_records, statistics::num_working, and session::total_records.
Referenced by cmd_stat().
|
static |
Definition at line 1057 of file session.c.
References hitsbytarget::approximation, cmp_ht(), cmp_ht_approx(), hitsbytarget::diagnostic, hitsbytarget::filtered, hitsbytarget::hits, hitsbytarget_nb(), name, hitsbytarget::records, and hitsbytarget::state.
Referenced by perform_termlist().
|
static |
Definition at line 98 of file session.c.
Referenced by session_count_total(), and session_use().
| struct parameters global_parameters |
Definition at line 85 of file session.c.
Referenced by cmd_exit(), http_serialize_response(), make_sessionid(), and sc_main().
|
static |
Definition at line 100 of file session.c.
Referenced by session_count_total(), and session_use().
|
static |
Definition at line 99 of file session.c.
Referenced by session_use().
1.8.1.2