written,
                                msgsz,
                                ct, i;
+       struct timeval  tv;
 
 
        if ( !root ) root = DEFAULT_ROOT;
                        snprintf(lbm_errdesc, MAX_ERR_LEN, "Maximum tries limit reached with unsuccessful file creation");
                        return -1;
                }
-               snprintf(fname, PATH_MAX, "%s/%s/%ld.%d.%s", root, dirs[LBMD_DIR_TMP], (long) time(NULL), getpid(), srvname);
+               gettimeofday(&tv,NULL);
+               snprintf(fname, PATH_MAX, "%s/%s/%ld.%ld_%d.%s", root, dirs[LBMD_DIR_TMP], 
+                       (long) tv.tv_sec, (long) tv.tv_usec, getpid(), srvname);
                if ( (fhnd = open(fname, O_CREAT|O_EXCL|O_WRONLY, 00600)) < 0 ) {
-                       if ( errno == EEXIST ) { sleep(2); continue; }
+                       if ( errno == EEXIST ) { /* hypothetic error */ continue; }
                        snprintf(lbm_errdesc, MAX_ERR_LEN, "Can't create file %s", fname);
                        return -1;
                }