Category Archives: Error

[Solved] Error in installing docker requires: fuse overlayfs >= 0.7

Cause: there is an error docker during installation, and the docker of CentOS 7.9 installation reports an error. Requirements: fuse overlays> = 0.7

el7.x86_64
---> Package docker-scan-plugin.x86_64 0:0.8.0-3.el7 will be installed
---> Package libcgroup.x86_64 0:0.41-21.el7 will be installed
---> Package libseccomp.x86_64 0:2.3.1-4.el7 will be installed
--> Finished Dependency Resolution
Error: Package: 3:docker-ce-20.10.8-3.el7.x86_64 (docker-ce-stable)
           Requires: container-selinux >= 2:2.74
Error: Package: docker-ce-rootless-extras-20.10.8-3.el7.x86_64 (docker-ce-stable)
           Requires: fuse-overlayfs >= 0.7
Error: Package: docker-ce-rootless-extras-20.10.8-3.el7.x86_64 (docker-ce-stable)
           Requires: slirp4netns >= 0.4
Error: Package: containerd.io-1.4.9-3.1.el7.x86_64 (docker-ce-stable)


Solution:

#Go to the yum source configuration folder
cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo_bak

Add an entry to /etc/yum.repos.d/docker-ce.repo at the top of the file, as follows
[centos-extras]
name=Centos extras - $basearch
baseurl=http://mirror.centos.org/centos/7/extras/x86_64
enabled=1
gpgcheck=0

# save and quit


#Then install the command:
yum -y install slirp4netns fuse-overlayfs container-selinux


srs Error: demux SPS/PPS : avc decode sequence header

SRS reports errors as follows:

[31m[2021-10-23 17:43:55.682][Error][31374][5ns94367][4] serve error
code=3001 : service cycle : rtmp: stream service : rtmp: receive
thread : handle publish message : rtmp: consume message : rtmp:
consume video : meta update video : demux SPS/PPS : avc decode
sequence header

This error means that SRS cannot obtain SPS and PPS information when receiving the code stream.
then select to disconnect from the streaming end. At this time, if the streaming end continues to push the stream, av_interleaved_write_frame (…) will report – 32, and the print log is:

broken pipe

The following encoder parameters need to be set:

if(octx->oformat->flags & AVFMT_GLOBALHEADER)
{
	printf("set video GLOBAL_HEADER\n");
	enc_ctx->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;
}
octx Represents the output context

Explain PPS and SPS, two-byte areas in the code stream, which are very important for decoding. If they are not found, decoding will
fail because they store the parameters set by the encoder, such as the height and width of the video, the sampling rate of the audio, the number of channels, etc
explain the meaning of the above code segment. It will detect the encapsulation format of the output context to determine whether AV is set_CODEC_FLAG_GLOBAL_HEADER.
The function of the AV_CODEC_FLAG_GLOBAL_header flag is to add PPS and SPS in front of each keyframe from the original encoding to the byte area of extradate. Then, when decoding, you have to read PPS and SPS from extradate and put them in front of each keyframe.

[Solved] Vscode Connect to the remote server error: permission denied (public key)

Background

The purpose is to edit the intranet server code locally

However, the springboard machine of the company’s server needs to log in with a key. In addition, there is a dynamic password + personal password. It has not been configured directly with vscode

The termius implementation is borrowed here

How to Solve:

    1. ensure that termius has logged in to the intranet server through the key dynamic password. Use the port forwarding function provided by termius to connect the local XX port to the YY port of the intranet server. Note that the intranet server port here depends on the personal opening. Configure the local ~ /. SSH/config file. For example, the content is as follows
Host local
    HostName 127.0.0.1
    Port xx port
    User Your own username for logging into the server
      1. put a copy of the public key given to you by the company in ~ /.SSH/ and pay attention to these key permissions. Generally, the key is only open to individuals, otherwise an error is reported. For example, permission denied (public key), Chmod 600 ~ /.SSH/* can be executed to change the key files of local and remote servers to only allow individuals to read and write, and the file can be modified locally directly through vscode connection.

 

Sqoop Error: Can‘t parse input data: ‘\N‘ [How to Solve]

Sqoop reports an error can’t parse input data: ‘\ n’

Problem Description: use sqoop to push the data in hive to Oracle. The program reports an error: can’t parse input data: ‘\ n’
. Null value cannot be recognized when derivative.

The reason for this exception is that when the table in hive is a partitioned table, the added fields do not use cascade, such as:

alter table app.suntest_user add  columns(name string comment 'name') cascade

When does not use the cascade keyword, hive does not update the history partition definition, resulting in differences between the columns in the table and the target table when transmitting history data.

For example:

False table suntest_ User created partition M08 in August, added a name column in September, and created partition M09, and added a name column to the table definition in the target database (Oracle). There is no problem exporting M09 partition data through the sqoop script, but an error will be reported when exporting M08 data: can’t parse input data: ‘\ n’

Solution:

You can rebuild the partition in August , or create a table for derivatives. The following is a table creation statement.

----- Create a table corresponding to the partition and use the temporary derivative 
	create table app.test_suntest_user as 
	select id,name from app.suntest_user where partition_month='M08' 

----Rebuild partition statement 
	--Rename partition 
	alter table app.suntest_user partition (partition_month='M08') rename to partition (partition_month='M08bak');
	--New Partition 
	insert overwrite table app.suntest_user partition(partition_month='M08')
	select id ,name from app.suntest_user where partition_month='M08bak'; 


The sqoop statement is as follows:

sqoop export --connect "jdbc:oracle:thin:@**********" \
--username "abc" \
--password "123" \
--input-null-string '\\N'  --input-null-non-string '\\N' \
--table "SUNTEST_USER" \
--export-dir /user/hive/warehouse/app/test_suntest_user\
--input-fields-terminated-by '\001' \

[Solved] Redis Cache Error: org.springframework.data.redis.serializer.SerializationException: Could not read JSON..

Problem description


Using redis to cache data, it can be successfully saved to redis

The serialization format of the value used is: genericjackson2jsonredisserializer , but the error is obtained from the cache for the second time


Key error message, suggesting no constructor
org.springframework.data.redis.serializer.SerializationException: Could not read JSON: Cannot construct instance of `io.renren.common.utils.PageUtils` (no Creators, like default construct, exist): cannot deserialize from Object value (no delegate- or property-based Creator)

Problem-solving:

The first method directly changes the serialization of value to string type. The second method adds an empty parameter structure

The second method is adopted. The disadvantage of the first method is that Chinese information may be escaped

[Solved] unknown error: DevToolsActivePort file doesn‘t exis

Scene

When using selenium, an error is reported one day, as shown in the title, and the code is as follows:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

option = Options()
option.add_argument('--headless')
option.add_argument('--no-sandbox')
option.add_argument('--disable-dev-shm-usage')

browser = webdriver.Chrome('./chromedriver',chrome_options=option)

browser.get('http://www.baidu.com/')
print(browser.title)
browser.quit()  

Solution:

First, ensure that the versions of Google Chrome and chrome River are consistent. If you are sure to be consistent, skip the following three steps.

    1. View Google Chrome version command:
google-chrome --version

I’m not sure about the command to view the chrome River version, but if you find the Google Chrome version, you can go to the following website to download the corresponding chrome river. If the versions are inconsistent, you need to download the consistent version from the download location

    1. google-chrome: http://dist.control.lth.se/public/CentOS-7/x86_64/google.x86_64/chromedriver: https://sites.google.com/a/chromium.org/chromedriver/downloads

Then the solution is to add an option

option.add_argument("--remote-debugging-port=9222")  # this

[Local Precompilation Error] do not set execute permissions for source files

1. Problem occurrence scenario

I created three new files under the project file. When submitting the code, I precompiled the script locally, and three errors occurred: do not set execute permissions for source files. Each file corresponds to one such error.

2. Understanding of error reporting

Do not set execute permissions for source files: do not set executable permissions for source files
understanding: you need to change the permission of the file to non-executable
for the understanding of file permissions, see how to understand file permission settings in this blog – 644 755 777, etc

3. Solution

1) On the console, after entering the file directory, enter
LS – L
to view the current permissions of the file. It is found that the file has “executable permissions”: X (generally 755)

2) Enter Chmod < File permission type, generally changed to 644><File name>

Prometheus Error: “INVALID“ is not a valid start token [How to Solve]

Error: “INVALID” is not a valid start token

The configuration file that reports the error:

  - job_name: 'jiankong'
    scrape_interval: 15s
    static_configs:
    - targets: ['192.168.17.54:6666']

Solution:

add a line of code

metrics_path: '/prometheus'

configuration file after solution

  - job_name: 'jiankong'
    metrics_path: '/prometheus'
    scrape_interval: 15s
    static_configs:
    - targets: ['192.168.17.54:6666']

Reason for error reporting: this problem is caused by incorrect data format, which can be solved by specifying the pulled data format

Taro Error: chunk common [mini-css-extract-plugin] Conflicting order between: ……

Error Messages:

chunk common [mini-css-extract-plugin]
Conflicting order between:
css ./node_modules/css-loader/dist/cjs.js??ref–2-oneOf-0-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@tarojs/mini-runner/node_modules/postcss-loader/dist/cjs.js??ref–2-oneOf-0-2!./node_modules/@tarojs/mini-runner/node_modules/less-loader/dist/cjs.js??ref–2-oneOf-0-3!./node_modules/vue-loader/lib??vue-loader-options!./src/components/place-holder/index.vue?vue&type=style&index=0&lang=less&css ./node_modules/css-loader/dist/cjs.js??ref–2-oneOf-0-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@tarojs/mini-runner/node_modules/postcss-loader/dist/cjs.js??ref–2-oneOf-0-2!./node_modules/@tarojs/mini-runner/node_modules/less-loader/dist/cjs.js??ref–2-oneOf-0-3!./node_modules/vue-loader/lib??vue-loader-options!./src/components/popup-scroll/index.vue?vue&type=style&index=0&lang=less&

 

Solution: It took a long time to find out that it was caused by the wrong order of introduction of components in a file, the pit.
Error example

<template>
	<view>
			<B/>
			<A/>
	</view>
</template>
<script>
		import A from "./components/a";
		import B from "../components/b";
</script>

Correct example

<template>
	<view>
			<B/>
			<A/>
	</view>
</template>

<script>
		import B from "../components/b";
		import A from "./components/a";
</script>

[Solved] OpenSSL ssL_read: Connection was aborted,errno 10053

OpenSSL ssL_Read: connection was aborted, errno 10053 error

Original error message:
git: fatal: unable to access’ https://github.com/overwhatx/gittest.git/ :
OpenSSL ssL_read: Connection was aborted,errno 10053

terms of settlement

Reason: git limits the size of push by default. Run the command to change the limit size to increase the buffer

Solution:
git config -- global http.postbuffer 524288000

Change network authentication settings

Solution:
git config http.sslverify "false"