Author Archives: Robins

[uboot]uboot 2019.04 port errors

error #1: include/config.h:7:10: fatal error: configs/.h: No such file or directory
Solve: reason is CONFIG_SYS_CONFIG_NAME does not have the right on the scripts/Makefile. Autoconf file, the solution is to put the CONFIG_SYS_CONFIG_NAME , this definition is generally in the board/
error #2: include/config.h:7:10: fatal error: configs/imx8mp_evk.h: No such file or directory
solve: H
include configs\imx8mp.h
file,

for example, if you defined CONFIG_SYS_CONFIG_NAME = bobcat , configs\imx8mp.h
file, configs

Solve MySQL error 1064 (42000)

After adding the statement to login to mysql in the shell, the error is reported as follows
ERROR 1064 (42000) at line 2: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ‘exit’ at line 1
After checking, the two back quotes are missing, which is perfectly solved by adding them to the last executed statement

Error. Onload failed when ‘rjava’ was calculated in loadnamespace()

64-bit Windows in installing rJava and Rwordseg times errors as well as solutions, the detailed procedure is as follows.

> install.packages('rJava')
--- Use the CRAN mirror for this connection phase ---.
试开URL’http://mirrors.xmu.edu.cn/CRAN/bin/windows/contrib/3.1/rJava_0.9-7.zip'
Content type 'application/zip' length 761221 bytes (743 KB)
The URL is open.
downloaded 743 KB

Package 'rJava' opened successfully, MD5 and check also passed.

The downloaded binary package is available in the
        C:\Users\asus\AppData\Local\Temp\RtmpUT48J3\downloaded_packages

There is no problem installing rJava through install.packages(‘ rJava ‘).

> library(rJava)
Error : loadNamespace().onLoad failed when calculating 'rJava', details.
  Call: inDL(x, as.logical(local), as.logical(now), ...)
  Error: Unable to load shared target 'C:/Program Files/R/R-3.1.3/library/rJava/libs/i386/rJava.dll'::
  LoadLibrary failure: %1 Not a valid Win32 application.

Error: 'rJava' programming package or namespace failed to load.

RJava loading error: The R client USES Windows 32bit, the operating system version is 64bit, and the system installed Java is 64bit, which is not compatible with rJava.

C:\Users\asus>java -version
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) **64-Bit** Server VM (build 25.45-b02, mixed mode)

The solution, using a 32-bit JRE, is to reset the environment variable.

> Sys.setenv(JAVA_HOME='C:\\Program Files (x86)\\Java\\jre6')
> library('rJava')

Resetting the environment variables before loading rJava, OK

> install.packages("Rwordseg", repos = "http://R-Forge.R-project.org", type = "source")
试开URL’http://R-Forge.R-project.org/src/contrib/Rwordseg_0.2-1.tar.gz'
Content type 'application/x-gzip' length 5445754 bytes (5.2 MB)
打开了URL
downloaded 5.2 MB

* installing *source* package 'Rwordseg' ...
** R
** demo
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
*** arch - i386
2015-8-31 11:34:07 org.ansj.util.MyStaticValue <clinit>
Warning: not find library.properties in classpath use it by default !
2015-8-31 11:34:08 org.ansj.library.UserDefineLibrary loadLibrary
Warning: init userLibrary  waring :library/default.dic because : not find that file or can not to read !
2015-8-31 11:34:08 org.ansj.library.UserDefineLibrary initAmbiguityLibrary
Warning: init ambiguity  waring :library/ambiguity.dic because : not find that file or can not to read !
2015-8-31 11:34:08 org.ansj.library.UserDefineLibrary loadFile
Message: init user userLibrary ok path is : C:\Program Files\R\R-3.1.3\library\Rwordseg\config\userdic
2015-8-31 11:34:09 org.ansj.library.InitDictionary init
Message: init core library ok use time :1570
2015-8-31 11:34:11 org.ansj.library.NgramLibrary <clinit>
Message: init ngram ok use time :1492
*** arch - x64
Agu 31, 2015 11:34:14 上午 org.ansj.util.MyStaticValue <clinit>
Warning: not find library.properties in classpath use it by default !
Agu 31, 2015 11:34:14 上午 org.ansj.library.UserDefineLibrary loadLibrary
Warning: init userLibrary  waring :library/default.dic because : not find that file or can not to read !
Agu 31, 2015 11:34:14 上午 org.ansj.library.UserDefineLibrary initAmbiguityLibrary
Warning: init ambiguity  waring :library/ambiguity.dic because : not find that file or can not to read !
Agu 31, 2015 11:34:14 上午 org.ansj.library.UserDefineLibrary loadFile
Message: init user userLibrary ok path is : C:\Program Files\R\R-3.1.3\library\Rwordseg\config\userdic
Agu 31, 2015 11:34:15 上午 org.ansj.library.InitDictionary init
Message: init core library ok use time :1107
Agu 31, 2015 11:34:16 上午 org.ansj.library.NgramLibrary <clinit>
Message: init ngram ok use time :675
* DONE (Rwordseg)

The downloaded package is available in the
        ‘C:\Users\asus\AppData\Local\Temp\RtmpUT48J3\downloaded_packages’
> library(Rwordseg)
# Version: 0.2-1       

Installation of Rwordseg is complete.
One thing to note here is the version of the JRE. Make sure it’s 32-bit.

Lock wait timeout exceeded — transaction and index

Problem description
There are two errors reported in the project, one is the task script execution time is too long, the other is the lock wait time is too long, as follows

Lock wait timeout exceeded; try restarting transaction


This task script is used to synchronize data between multiple tables, and there are multiple scripts and other code in the project that may manipulate table data and generate locks. There are two tables with millions of data levels and a large number of items.
If you are not familiar with deadlocks and lock waits, you can quickly jump to the links below to understand what a lock wait is and why it might be causing it. Deadlocks and lock waits
Problem analysis
First of all, let’s put out the pseudocode for this part.

void method(){
	The transaction begins;
	while(true) {
		List<ObjectA> list1 = Get 100 data from table A according to the criteria;
		if(list1 is empty){ // if it is empty, it means the data has been processed.
			return;
		}
		
		// manipulate ObjectA data sequentially
		for(ObjectA objectA: list1) {
			Delete table A data;
			Merge with table B data and update the corresponding data;
			Synchronize the table C data;
		}
	}
	That's it;

Translated with www.DeepL.com/Translator (free version)
}

The main reason is that there is a problem with the location of the transaction addition, and the data table has no corresponding index, resulting in the update time is too long.
Tasks take too long to execute
This is mainly because there is a lack of index when updating the data. When the data volume is relatively large, it takes a long time to find the corresponding data. This can be analyzed through the database SQL statement execution time, because our unit has a big data platform, through the analysis of the big data platform, find the longest execution time of several SQL analysis. If there is no relevant platform, it is suggested to add logging before and after the query and update operation of some tables with large data volume, so as to facilitate the analysis of SQL execution.
Lock wait times are too long
This is the result of both transactions and indexes.
During the execution of a transaction, all tables involved in updating/adding in the transaction are locked and wait when other processes request data from this part of the table. The missing index leads to long loops in the code and transactions are added to the entire loop, so the lock wait time will time out, causing the problem at the beginning of the article. In addition to adding indexes at the database level, you need to adjust the content of the code, remove transactions, or optimize transaction locations.
Problem solving
1. Database: We built the index in Table B according to the query conditions. The average execution time was 10min before, but it was shortened to 1min after addition.
2. Code: Due to the characteristics of our business, this code, even if there is an exception in the update, as long as the data in Table A is still retained, it will not have an impact on the overall business. The next time the script executes, we can add this data back, so we remove the transaction, restructure the code, and add an exception handler. The resulting code looks like this.

void method(){
	while(true) {
		List<ObjectA> list1 = Get 100 data from table A according to the conditions;
		if(list1 is empty){ // if it is empty, the data has been processed, the end
			return;
		}
		
		// manipulate ObjectA data sequentially
		for(ObjectA objectA: list1) {
			try{
				Merge with table B data and update the corresponding data;
				Synchronize table C data;
				Delete the data from table A;
			} catch(Exception e) {
				Logging exceptions;
			} finally {
				Logging execution time;

Translated with www.DeepL.com/Translator (free version)
			}
		}
	}
}

Of course, if the business scenario requires a transaction, you can also pull out the code inside the loop and do the transaction separately.

451 4.7.0 temporary server error. Please try again later. Prx5

4.7.0 Temporary Server Error. Please try again later. PRX5 solves the instance
It’s sunny and beautiful this morning! Suddenly, I received a call from a customer, saying that all outlook POP3 of their Company’s Exchange 2013 could not be used normally. The user and password verification box popped up, and it was of no use to enter the password repeatedly or confirm directly.
After communication, I was informed that there was a similar fault before, that was when the service of POP stopped and started, and no modification was made recently. After learning the situation, I logged in to the server remotely and checked that the Exchange service was started normally without any problems.
So I quickly configured a POP mode on my computer, and I got an error when Verifying the user name and password. It didn’t matter if I entered the password repeatedly or confirmed it directly, as described by the customer, as shown in the figure below

What do you do next?Restart the server?This is the next best thing. Maybe a restart can solve your problem temporarily, but the reason is not found, and the problem recurs later. How to deal with it?
451 4.7.0 Temporary Server Error. Please try again later. PRX5
The Telnet test format is as follows:
 
telnet mail.xxx.com 25
Ehlo XXX or HELo, [ESMTP ehlo XXX, SMTP HELo, I’ll fill ehlo XXX, XXX whatever]
Mail from:[email protected][administrator address]
RCPT to:[email protected][recipient address]
Data [Start writing email]
From :XXX[sender address]
To :XXX[Recipient address]
Subject: CEShi pop3 Send and Receive [subject]
Ceshi pop3 send and receive[Note: The body of the email should be blank, otherwise it will be automatically determined as the subject. If you want to send Chinese, you need to download Telnet client separately, see attachment]
.[End of message identifier]
Normally it will prompt you that the message has been queued for sending
Quit [After sending the email]
 

Step 1. Google the cause of the error and find the solution to the problem.
Reference 1.
https://social.technet.microsoft.com/Forums/exchange/en-US/fc26dac5-d4e2-49da-903d-361ea8b85388/451-470-temporary-server-error-please-try-again-later-prx5
I talked to a MS support rep today and they confirmed the same problem, except to resolve it we had to add the local server’s IP to our hosts file:
192.168.1.5 server
192.168.1.5 server. The domain. The local
Restart “Microsoft Frontend Transport” and “Microsoft Exchange Transport” services
The support agent stated that he’s seen this in a few cases now. All of which are when the Exchange server front and back-ends reside on the same box. Sounds like an Exchange bug to me.
Reference 2,
http://blog.5dmail.net/user1/1/2014414174021.html
 

Exchange Server 2013 cannot receive emails sent from outside. Remote Host said: 451 4.7.0 Temporary Server Error. Please try again later. PRX2
 
[Reason analysis]
The Exchange Server 2013 in question was installed with multiple roles. Including the mailbox and client access roles of DOMAIN control and Exchange 2013, and because the client server is hosted in the computer room, it is equipped with two network CARDS, which are configured with an Intranet IP and a public network IP respectively, the fault is mainly caused by the two network CARDS using different DNS.
 
Step 2: Modify the local C:\Windows\System32\drivers\etc\ hosts file, add and save the local records of Exchange 2013 server.

Step 3. Check the Exchange server and THE AD domain server, and check that the DNS is pointing to the inside and there is no record pointing to the outside.
Step 4. Restart the “Microsoft Frontend Transport” and the “Microsoft Exchange Transport” services


Step 5: If you restart the “Microsoft Frontend Transport”, the Transport service has stopped and cannot get up, restart the server?No, we open the task manager, find Msexchangetransport.exe finish the task and restart the Transport service.

Step 6. After the processing, we tested a Telnet test. The specific method referred to the description in the previous part of the article, and the email was successfully sent.

Step 7. When opening Outlook, the test has been successfully tested, the receiving and sending is normal, and there is no password box prompt, and the fault is solved. Thank you for your patience to watch, thank you!

 

Reproduced in: https://blog.51cto.com/yuntcloud/1584670

Got an error reading communication packets


because an unknown database came out in the middle, the unconnected database does not exist, resulting in the error of connection packet information. Report this error.
Show global status like ‘abort%’;
Aborted_clients and Aborted_connects whether the changes are drastic. The reasons for the aborted_active error include: the client connects to an unauthenticated database, incorrect password, incorrect connection packet information, and connection timeout (the default is 10s)
Aborted_clients may have failed to perform mysql_close(), exceeded the value of wait_timeout or interactive_timeout because the connection has not been closed (the timeout is 8 hours), terminated during program execution, excessively small max_allowed_packet, network issues, thread bugs, etc

Can’t open display: can’t open display: localhost:10.0

Windows connects to the Linux remote desktop with Xmanager4.0’s Xstart

The installation package:
xorg-x11-xauth
xterm.x86_64 0:253-1.el6
Execute the command path:/usr/bin/xterm
 
The benefit of Xstart connecting to the Linux remote desktop is that you don’t need to do anything on the server side, just turn on SSH.
The server has to have a desktop environment, and X Window
 
XDMCP connection, the server side to do some configuration, trouble.
 
The menu
Xmanager Enterprise 4 — Xbrowser
Create a new Xstart session

The protocol is SSH,
Click the following button to select GNOME
 
Open the session and you can connect to the remote desktop. It’s easy.
 
There are three menus in the taskbar,
One is to display the Linux header menu
One is the taskbar that displays Linux
One is the desktop that displays Linux
 
How to quit
Right-click in the taskbar (right) and close XManager
 
You can also set up an Xstart session in the following way
The menu
Xmanager Enterprise 4 — Xstart
 

If an error is reported: the X11 transfer application has been rejected,
(check first that X11Forwarding yes
is set in etc/ssh/sshd_config, but on some hosts, no matter how you set it up in the client side, there’s no way you can forwarding the X11 forwarding feature correctly; after logging in, DISPLAY will always be empty. The sshd_config file also doesn’t disable The X11 Forwarding feature.
solution:
originally X11 forwarding relies on the “xorg-x11-xauth” package, so you must first install the “xorg-x11-xauth” package.
yum install xorg-x11-xauth)
X Window should be installed on the server. See the link below.
 
If the server does not have a desktop environment, the following error is reported
[17:18:41] Start timer (TIMER_SHUTDOWN, 180).
bash: /usr/bin/gnome-session: No such file or directory
 
———————————————————————————————————————————————-

Start the specific Settings for the GNOME desktop with XStart

    start xstart, name a session, enter host name, hang SSH, enter user name and password, and Execution Command box: if GNOME is started, fill in DISPLAY=$DISPLAY /usr/bin/gnome-session; if KDE is started, fill in DISPLAY=$DISPLAY /usr/bin/startkde to modify configuration

1) Click start – All programs – XManager 3 – Xconfig, and then double-click the configuration you are currently using (there is a small checkmark, usually Default Profile).

2) Window Mode select Multiple Windows Mode, then click Settings, select Multiple Windows Mode TAB, Window corresponding to the drop-down box select Remote Only or Automatic Switch, and click OK

Select Terminate at Reset

4) Click OK.

Failure to start XStart several errors and resolution

Error 1: Can’t open display: localhost:10.0 when connecting

_X11TransSocketINETConnect () can ‘t get the address for localhost: 6010: Name or service not known

/usr/bin/xterm Xt error: Can’t open display: localhost:10.0

Solutions:
Add in /etc/hosts
127.0.0.1 localhost
Ipaddress hostname
Then you can go to the graphical interface, and notice the actual IP and machine name
Error 2: The Xterm directory for SLC5 and SLC4 is not the same and should be noted.
/usr/X11/bin/xterm: Command not found.
Change Excution Command to
The/usr/bin/xterm – ls – $display display
Can be
————————————————————————————————————————
 
[16:21:58] Host authentication initiated…
[16:21:58] Hostkey fingerprint:
[16:21:58] SSH – dsa 1024 o c: c3: f8:71:0 f: d2: b2: e1:4 c: 21: f8: abarim: 9 a: 9 a
[16:22:00] Accepted. Verifying the host key…
[16:22:00] Verified.
[16:22:00] User authentication initiated…
[16:22:00] Sent user name ‘oracle’.
[16:22:00] Sent password.
[16:22:00] follow the command line.
[16:22:00] /usr/X11R6/bin/ xterm-ls-display $display
[16:22:00] Start timer (TIMER_SHUTDOWN, Xauthority
/usr/X11R6/bin/xauth: creating new authority file /home/oracle/.Xauthority
bash: /usr/X11R6/bin/xterm: No such file or directory
[16:22:01] Connection closed
 
 
 
Solution:
 
[root@localhost ~]# rpm-qf /usr/bin/xterm
xterm-215-4.el5
 
The RPM package was found missing and installed
 
Mount the cd-rom
 
[root@localhost ~]# mount -t iso9660 /dev/cdrom /mnt/cdrom
[root@localhost ~]#cd /mnt/cdrom
 
[root@localhost cdrom]# cd Server
[root@localhost Server]# ls xterm*
xterm-215-5.el5.i386.rpm

[root@localhost Server]# rpm -ivh xterm-215-5.el5.i386.rpm
warning: xterm-215-5.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing… # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # [100%]
the file/usr/bin/resize the from the install of xterm – 215-5. El5 conflicts with the file from package xterm – 215-4. El5
the file /usr/bin/xterm from install of xterm-215-5.el5 conflicts with file from package xterm-215-4.el5
 
An error occurred installing the xter-215-5.el5.i386.rpm package, meaning that the Xterm package named Xter-215-4.el5 has been installed under /usr/bin/xterm
 
Determine what to do now that the package already exists…
modify the configuration of Xstart and click the arrow to add it in the Execution Command: as shown in the figure below:
 

 
After clicking the arrow, click Add/Remove… Add the execution command line. The following figure
 

 
After adding, in the XStart window, re-specify, as shown in the figure below
 

 
That’s it

Arithmetic overflow error converting numeric to data type numeric.


Run the stored procedure when found this error, the stored procedure for thousands of lines of code, scan the stored procedure will find storage process is divided into several parts, the wrong time, I will COPY the original stored procedure, then a part of a part of the add up, and every part of add, will carry out this part of the code, the final positioning in the sixth part, and then a field continue to locate a field, and finally, positioning the two fields has a problem, as shown in figure

After locating this problem, I checked the data:


 
And then look at the table structure:

Remember that Maven can’t recognize Java_ Home problem error: Java_ HOME is not defined correctly.

After installing Java on CentOS and configuring environment variables, an error occurred while installing Maven configuring environment variables.

Error: JAVA_HOME is not defined correctly.

vim /etc/profile
export JAVA_HOME=/usr/ Java /jdk1.8.0_171

export JAVA_HOME=/usr/ Java/jdk1.8.0_17/bin/java can be changed to
0. 0 I was really helpless, a little little detail did not notice, do along while

Error dropping database can’t rmdir

When deleting the MySql database, the client program and the command line controller all reported an error:

ERROR 1010 (HY000): Error dropping database (can't rmdir './db_test', errno: 39)

Solutions:

Go directly to the MySql data directory, directly delete the database corresponding file directory. Then refresh and look at the database, and you will find that the database is gone.

# rm -rf /usr/local/mysql/data/db_test

MySQL error 1030 got error 1 from storage engine

Today, the query on MySQL found that the reported error was 1030 Got error 1 from storage engine.
My MySQL for Innodb, I guess Innodb setup problem. Later, I looked for the information on the Internet and added innodb_force_recovery=0 in the configuration file my. Ini
Then, restart the MySQL service and it works correctly.