@@ -218,8 +218,8 @@ static inline bool is_existed_in_exit_cache(struct symbolizer_cache_kvp *kv)
218218 vec_foreach (kv_tmp , pids_cache .exit_pids_cache ) {
219219 if ((int )kv_tmp -> k .pid == kv -> k .pid ) {
220220 struct symbolizer_proc_info * list_p =
221- (struct symbolizer_proc_info * )kv_tmp -> v .
222- proc_info_p ;
221+ (struct symbolizer_proc_info * )kv_tmp ->
222+ v . proc_info_p ;
223223 struct symbolizer_proc_info * curr_p =
224224 (struct symbolizer_proc_info * )kv -> v .proc_info_p ;
225225 ebpf_warning
@@ -249,8 +249,8 @@ static inline bool is_existed_in_exec_cache(struct symbolizer_cache_kvp *kv)
249249 vec_foreach (kv_tmp , pids_cache .exec_pids_cache ) {
250250 if ((int )kv_tmp -> k .pid == kv -> k .pid ) {
251251 struct symbolizer_proc_info * list_p =
252- (struct symbolizer_proc_info * )kv_tmp -> v .
253- proc_info_p ;
252+ (struct symbolizer_proc_info * )kv_tmp ->
253+ v . proc_info_p ;
254254 struct symbolizer_proc_info * curr_p =
255255 (struct symbolizer_proc_info * )kv -> v .proc_info_p ;
256256 if (curr_p != 0 && list_p != 0 ) {
@@ -770,19 +770,20 @@ void *get_symbol_cache(pid_t pid, bool new_cache)
770770 p -> update_syms_table_time =
771771 curr_time +
772772 get_java_syms_fetch_delay ();
773+ } else {
774+ p -> update_syms_table_time = curr_time ;
773775 }
774776
775777 /*
776778 * When the deepflow-agent is started, to avoid the sudden
777779 * generation of Java symbol tables, additional random value
778780 * for each java process's delay.
781+ * The same applies to non-Java processes, which also perform
782+ * random symbol table loading within one minute.
779783 */
780- if (p -> syms_cache == 0
781- && !p -> gen_java_syms_file_err ) {
782- p -> update_syms_table_time =
783- generate_random_integer
784- (PROFILER_DEFER_RANDOM_MAX );
785- }
784+ p -> update_syms_table_time +=
785+ generate_random_integer
786+ (PROFILER_DEFER_RANDOM_MAX );
786787 }
787788
788789 if (p -> update_syms_table_time > 0
0 commit comments