Compare commits

..

1 Commits

Author SHA1 Message Date
Hongcai Deng f586c8e03f
Merge a16fde8070 into 4b9ef52da2 2025-11-06 21:07:25 +00:00
7 changed files with 15 additions and 44 deletions

View File

@ -1,7 +1,4 @@
Version 1.83 2025-11-15
* fast_task_queue.h: remove field finish_callback
Version 1.82 2025-11-04 Version 1.82 2025-11-04
* set use_io_uring explicitly * set use_io_uring explicitly

View File

@ -21,5 +21,5 @@ Debian, Ubuntu etc.:
# the command lines as: # the command lines as:
git clone https://github.com/happyfish100/libfastcommon.git git clone https://github.com/happyfish100/libfastcommon.git
cd libfastcommon; git checkout V1.0.83 cd libfastcommon; git checkout V1.0.81
./make.sh clean && ./make.sh && sudo ./make.sh install ./make.sh clean && ./make.sh && sudo ./make.sh install

18
debian/changelog vendored
View File

@ -1,21 +1,3 @@
libfastcommon (1.0.83-1) unstable; urgency=medium
* upgrade to 1.0.83-1
-- YuQing <384681@qq.com> Sun, 23 Nov 2025 10:47:37 +0000
libfastcommon (1.0.83-1) unstable; urgency=medium
* upgrade to 1.0.83-1
-- YuQing <384681@qq.com> Sun, 23 Nov 2025 10:00:00 +0000
libfastcommon (1.0.83-1) unstable; urgency=medium
* upgrade to 1.0.83-1
-- YuQing <384681@qq.com> Sun, 23 Nov 2025 09:05:57 +0000
libfastcommon (1.0.78-1) unstable; urgency=medium libfastcommon (1.0.78-1) unstable; urgency=medium
* upgrade to 1.0.78-1 * upgrade to 1.0.78-1

View File

@ -3,7 +3,7 @@
%define CommitVersion %(echo $COMMIT_VERSION) %define CommitVersion %(echo $COMMIT_VERSION)
Name: libfastcommon Name: libfastcommon
Version: 1.0.83 Version: 1.0.81
Release: 1%{?dist} Release: 1%{?dist}
Summary: c common functions library extracted from my open source projects FastDFS Summary: c common functions library extracted from my open source projects FastDFS
License: LGPL License: LGPL
@ -19,10 +19,10 @@ Requires: %__cp %__mv %__chmod %__grep %__mkdir %__install %__id
%define kernel_major %(uname -r | cut -d'.' -f1) %define kernel_major %(uname -r | cut -d'.' -f1)
%define kernel_minor %(uname -r | cut -d'.' -f2) %define kernel_minor %(uname -r | cut -d'.' -f2)
%define kernel_ver_int %(expr %{kernel_major} \\* 100 + %{kernel_minor}) %define kernel_ver_int %(expr %{kernel_major} \* 100 + %{kernel_minor})
%if %{kernel_ver_int} >= 514 %if %{kernel_ver_int} >= 514
BuildRequires: liburing-devel >= 2.4 BuildRequires: liburing-devel >= 2.5
Requires: liburing >= 2.4 Requires: liburing >= 2.5
%endif %endif
%description %description

View File

@ -37,6 +37,7 @@ struct nio_thread_data;
struct fast_task_info; struct fast_task_info;
typedef int (*ThreadLoopCallback) (struct nio_thread_data *pThreadData); typedef int (*ThreadLoopCallback) (struct nio_thread_data *pThreadData);
typedef int (*TaskFinishCallback) (struct fast_task_info *task);
typedef void (*TaskCleanUpCallback) (struct fast_task_info *task); typedef void (*TaskCleanUpCallback) (struct fast_task_info *task);
typedef int (*TaskInitCallback)(struct fast_task_info *task, void *arg); typedef int (*TaskInitCallback)(struct fast_task_info *task, void *arg);
typedef void (*TaskReleaseCallback)(struct fast_task_info *task); typedef void (*TaskReleaseCallback)(struct fast_task_info *task);
@ -148,6 +149,7 @@ struct fast_task_info
struct fc_list_head dlink; //for polling queue struct fc_list_head dlink; //for polling queue
} polling; //for RDMA busy polling } polling; //for RDMA busy polling
TaskContinueCallback continue_callback; //for continue stage TaskContinueCallback continue_callback; //for continue stage
TaskFinishCallback finish_callback;
struct nio_thread_data *thread_data; struct nio_thread_data *thread_data;
struct sf_network_handler *handler; //network handler for libserverframe nio struct sf_network_handler *handler; //network handler for libserverframe nio
struct fast_task_info *next; //for free queue and deleted list struct fast_task_info *next; //for free queue and deleted list

View File

@ -145,7 +145,10 @@ static void deal_timeouts(FastTimerEntry *head)
/* must set NULL because NOT in time wheel */ /* must set NULL because NOT in time wheel */
current->prev = current->next = NULL; current->prev = current->next = NULL;
pEventEntry = (IOEventEntry *)current; pEventEntry = (IOEventEntry *)current;
pEventEntry->callback(pEventEntry->fd, IOEVENT_TIMEOUT, current); if (pEventEntry != NULL)
{
pEventEntry->callback(pEventEntry->fd, IOEVENT_TIMEOUT, current);
}
} }
} }
@ -240,7 +243,7 @@ int ioevent_loop(struct nio_thread_data *thread_data,
} }
if (thread_data->deleted_list != NULL) { if (thread_data->deleted_list != NULL) {
//count = 0; count = 0;
while (thread_data->deleted_list != NULL) { while (thread_data->deleted_list != NULL) {
task = thread_data->deleted_list; task = thread_data->deleted_list;
thread_data->deleted_list = task->next; thread_data->deleted_list = task->next;
@ -254,7 +257,7 @@ int ioevent_loop(struct nio_thread_data *thread_data,
} }
} }
clean_up_callback(task); clean_up_callback(task);
//count++; count++;
} }
//logInfo("cleanup task count: %d", count); //logInfo("cleanup task count: %d", count);
} }

View File

@ -1636,29 +1636,16 @@ static inline int fc_ltostr_ex(int64_t n, char *buff, const int padding_len)
return len; return len;
} }
#if defined(OS_LINUX) && defined(__GNUC__) && __GNUC__ >= 8
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wstringop-overflow"
#endif
fill_len = padding_len - len; fill_len = padding_len - len;
memmove(buff + fill_len, buff, len + 1); memmove(buff + fill_len, buff, len + 1);
memset(buff, '0', fill_len); memset(buff, '0', fill_len);
#if defined(OS_LINUX) && defined(__GNUC__) && __GNUC__ >= 8
#pragma GCC diagnostic pop
#endif
return padding_len; return padding_len;
} }
static inline int fc_ltostr(int64_t n, char *buff) static inline int fc_ltostr(int64_t n, char *buff)
{ {
int len; const int padding_len = 0;
return fc_ltostr_ex(n, buff, padding_len);
len = fc_itoa(n, buff);
*(buff + len) = '\0';
return len;
} }
static inline size_t fc_strlcpy(char *dest, const char *src, const size_t size) static inline size_t fc_strlcpy(char *dest, const char *src, const size_t size)